Skip to main content

Full text of "CBM 8-Bit Magazine Index: Compute's Gazette Special Section"

See other formats


10 NEW SUPER LAPTOPS PUT TO a TEST! 
) > : Gece = is 
ic 


SEPT — 1991 


DOUBLE YOUR HARD DISK SPACE 
KE) ry | LI EGAL $ S] T RA ly TEGII ES FOR HO! MEO U La FFICES 


DOS 5- naapld de USER’S GUIDE 


CLUSIN Wel RE qi LM n iOTIO! N VIDEO ) FRON Mi AD DIS SK! 


VE. RE WLS r ey 


Now “495 Stops The Clock 
On Over 100 GEnie Services. 


Now enjoy unlimited non- 
prime time usage of over 100 
popular GEnie Service features. 
For just $4.95 a month.* You get 
everything from electronic mail to 
exciting games and bulletin 
boards. Nobody else gives you so 
much for so little. 


3. At the U#=prompt, enter 
XTX9G482,COMPUTE 
then press <RETURN>. 
4. Have a major credit card or 
your checking account number 
ready. 

For more information in 
the US. or Canada, call 


Moneyback guarantee 
Sign up now. If you're not 
satisfied after using 
GEnie for one month, 
we'll refund your $4.95. 


Plus enjoy access to sofware Sign-up today. 1-800-638-9636. 
libraries, computer bulletin Just follow these simple steps. 
boards, multi-player games and 1. Set your communication soft- 
more for just $6 per non-prime ware for half duplex (local echo), 
hour for all baud rates up to up to 2400 baud. 
2400. And with GEnie there’sno _2.. Dial toll free 1-800-638-8369. 5 5 
sign-up fee. Upon connection, enter HHH GE Information Services 


*Applies only in US, Mon-Fri, 62M-8AM local time and all day Sat, Sun, and select holidays. Prime time hourly rate $18 up to 2400 baud. 
Some features subject to surcharge and may not be available outside US. Prices and producss listed as of Oct. 1, 1990 subject to change. 
Telecommunication surcharges may apply. Guarantee limited to one per customer and applies only to first month of use. 


Circle Reader Service Number 205 


64/128 VIEW 


New 64 titles were scarce at the 
Consumer Electronics Show, but there’s 
still some fun coming our way. 


Tom Netsel 


he 1991 International 

Summer Consumer Elec- 

tronics Show closed its 

doors recently in Chica- 
go after 55,629 attendees 
logged many extra miles on 
their Nike and Reebok Fre- 
quent Hiker plans. It took a 
lot of shoe leather to visit 
each of the 1,019 exhibits 
that filled a half-million 
square feet of exhibit 
space, and finding new 64 ti- 
tles in this electronic mid- 
way was something of a chal- 
lenge. 

There were plenty of PCs 
and Amigas displaying new 
software, but there were no 
64s. Many companies say 
they no longer get enough re- 
turn on their investment to 
continue producing prod- 
ucts for the 64, 

After much asking, prob- 
ing, and poking around, how- 
ever, | did manage to locate 
some new products. Rea- 
dySoft says its multidisk 
Wrath of the Demon should 
be out in September, but 
look for it on cartridge, too. 
“With the introduction of the 
Commodore Game Console 
in England, cartridge 
games developed for that 
system will work just fine on 
a 64,” says ReadySoft Sen- 
ior Vice President Elizabeth 
Arnold. 

This state-of-the-art 
game contains more than 
3MB of graphics data, 600 
screens of action, and 1400 
frames of animation. Look 
for more cartridges and 
disks coming from the U.K., 
since ReadySoft has joined 
Empire Software and will be 
importing some of its prod- 
ucts. Another title due out in 
late fall is Guy Spy. 

At Electronic Arts, affiliat- 
ed labels SSI and Mindcraft 
have new offerings that 


should be exciting. Step up 
to the plate with Strategic 
Simulations’ Ultimate Base- 
ball. That's the working title, 
but whatever it's called, this 
simulation lets you play, man- 
age, or watch one game or 
a whole 162-game season. 

War game fans haven't 
been forgotten. Look for an 
SSI war game coming soon. 
It's called Medieval Lords. 

Gateway to the Savage 
Frontier is the first of a new 
AD & D series from SSI. It 
takes place in a mysterious 
territory in the world of Forgot- 
ten Realms. Starting in the 
town of Yarter, venture over 
a vast wilderness on a 
quest for four magical statu- 
ettes. 

Later this year, look for 
The Magic Candle, Vol. 2 
from Mindcraft. In this se- 
quel explore the dreaded 
realm of Gurtex in search of 
the dark secrets of black can- 
dies. A new user interface 
lets you capture conversa- 
tions, eliminating the need 
for constant note taking. As- 
tound friend and foe with 
new spells, such as Glam- 
our, Courage, and Terrify. 

The Electronic Zoo is bun- 
dling 20 popular games 
from Great Britain and send- 
ing them to the U.S. as Star 
Collection. These hits 
should be available now. 

Konami is another compa- 
ny supporting the 64—and 
now one of the more active 
ones. Over the next few 
months, look for five new 
games based on popular 
movies and hit television pro- 
grams. Look for such excit- 
ing titles as Bart Simpson's 
Adventure, Simpsons’ Ar- 
cade Game, Teenage Mu- 
tant Ninja Turtles: The Ar- 
cade Game, Back to the Fu- 
ture Ill, and Predator2. OG 


CONTENTS 


64/128 VIEW , G-1 
The 1991 Summer CES had little for the 64, but new 
products are heading our way. By Tom Netsel. 


COMMODORE CLIPS G-2 


Gazette goes online with QuantumLink, Commodore 
earnings are up, and more. By Tom Netsel. 


A GUIDE TO COMMODORE 
USER GROUPS (PART II) G-4 


User group listings for Nevada-Wyoming and around 
the world. By Kandi Sykes and Dana Stoll. 


REVIEWS G-10 


Back to the Future Il, Fastfingers, Nightbreed, and 
Power Drift. 


FEEDBACK G-16 
Questions and answers. 

GEOS 6-19 
GEOS telecommunicating. By Steve Vander Ark. 
MACHINE LANGUAGE G-20 
Use binary fractions. By Jim Butterfield. 

BEGINNER BASIC G-21 
Crashproof your programs. By Larry Cotton. 
PROGRAMMER’S PAGE G-22 
Programming tips for the 64. By Randy Thompson. 
D’IVERSIONS G-24 
Has the robot revolution started? By Fred D'Ignazio. 
PROGRAMS G-25 
Spanish Vocabulary Quiz G-25 
SpeedSwap G-28 
Credit Control G-29 
Plotter G-31 
Showdown G-32 
Medium Density Driver G-34 
RapidFormat 128 G-35 
MLX G-38 


“Gazette 

Gallery” presents 
Lutanist, 

by Jack (DocJM) 
Modjallal of 
Encino, California, 
as this 

disk’s Picture of 
the Month. 


COMMODORE CLIPS 


Tom Netsel 


GAZETTE GALLERY 


Each month Gazette Disk fea- 
tures a collection of the best 
64/128 artwork submitted by 
our readers. We pay $50 for 
each piece of art we accept 
for “Gazette Gallery” and an ex- 
tra $50 for the one selected as 
Picture of the Month and fea- 
tured on this page. To submit 
your original artistic creations, 
send them to Gazette Gallery, 
COMPUTE Publications, 324 
West Wendover Avenue, 
Suite 200, Greensboro, North 
Carolina 27408. 


Gazette Goes Online 

Two of the biggest names in 
the Commodore world are join- 
ing forces to offer 64 and 128 
users an exciting new dimen- 
sion to their computing activi- 
ties. COMPUTE's Gazette will 
soon be online at Quantum- 
Link (8619 Westwood Center 
Drive, Vienna, Virginia 22180; 
800-827-8444). 

You've read Gazette for 
years; soon you can access 
Gazette electronically on the 
only Commodore-specific on- 
line service. With your comput- 


G-2 


COMPUTE 


er, modem, and Q-Link's free 
terminal software, you'll be 
able to access many of your fa- 
vorite Gazette features. 
Check Gazette and Q-Link as 
details become available 
about our upcoming debut. 


Check This Out 
Sparks Electronics (P.O. Box 
0475, St. Joseph, Missouri 
64504-0475) has released 
S.E.C. Check Register 128 
($16) for the 128 in 80-col- 
umn mode. Designed to man- 
age personal or small busi- 
ness checking accounts, 
S.E.C. Check Register can 
contain up to 750 entries. 
Special emphasis is given 
to data entry, recurring pay- 
ees, check printing, and print- 
ing of register data. Recurring 
payee files can contain up to 
54 names and adaresses, but 
users can load others into the 
current register for an unlimit- 
ed number of payees. 


Earnings Up at Commodore 
Commodore International Lim- 
ited reported $10.6 million in 
income on sales of $246.3 mil- 
lion for the third fiscal quarter 
of 1991, which ended March 
31. This represents a substan- 
tial increase in earnings and 
a 16-percent increase in 
sales compared to the year- 
ago quarter. An extraordinary 
charge of $9.2 million relating 
to a previously announced 
court settlement of litigation 
was recorded in the quarter, 
resulting in net income of 
$1.4 million. 

For the nine months that 
ended March 31, 1991, in- 
come increased tenfold to 
$54.1 million compared with 
$5.0 million in the prior year. 
Sales increased 21 percent to 
$830.7 million, compared 
with $689.2 million in the year- 
ago period. Net income for 
the nine months increased nin- 
efold to $44.9 million, or 
$1.37 per share. 

Every product line contribut- 


ed to revenue growth in the 
quarter. Unit sales of Amiga 
computers increased 30 per- 
cent, while the 64 product 
line registered unit growth of 
48 percent, largely due to ex- 
panded sales in new markets. 


The Krynn Epic Continues 
Strategic Simulations announc- 
es the release of Death 
Knights of Krynn ($39.95) for 
the 64. (SSI products are dis- 
tributed by Electronic Arts, 
1820 Gateway Drive, San 
Mateo, California 94404.) 
This game is the sequel to the 
popular Advanced Dungeons 
& Dragons fantasy role-play- 
ing game Champions of 
Krynn. 

Death Knights of Krynn be- 
gins a year after the conclu- 
sion of Champions of Krynn. 
At a victory party on the anni- 
versary of the evil force's de- 
feat, the celebration is inter- 
rupted by an unwelcome par- 
ty crasher. The undead Sir 
Karl sweeps in on a Death 
Dragon and steals a revered 
Dragonlance. The adventure 
begins as the champions set 
out to track Sir Karl and recov- 
er the stolen item. 

Your favorite characters 
from Champions of Krynn can 
be imported to Death Knights 
of Krynn, along with their ac- 
cumulated items and wealth. 
This is a new feature not pre- 
viously offered in AD & D fan- 
tasy role-playing games. 


Big Al and Pals 
Return to Chicago's golden 
age of gangsters and take on 
the Mob in The Untouchables 
($14.95) from Ocean of Amer- 
ica (distributed by Electronic 
Arts, 1820 Gateway Drive, 
San Mateo, California 94404). 
Guide Eliot Ness's band of 
mob-busters through five lev- 
els of arcade action: the Ware- 
house Bust, the Border Raid, 
the Alley Shootouts, the Rail- 
way Station Confrontation, 
and the Rooftop Duels. a 


WE CAN RECONFIGURE ANY OF OUR COMPUTER PACKAGES TO YOUR 
SPECIFICATIONS. CALL FOR DETAILS! 


MJO/N/T/G/O/MJE|R|Y) RIAIN|T} as 


COMMODORE 


AMIGA 


ESTABLISHED 


1967 


C=commodore: 


1084 
MONITOR 


C=Commodore: eta tegel ale 


80 COL. THERMA 
® 
CNG ecnomone) || PRINTER wciucs 
Includes: SPECIAL 
Quantum Link Software Sie saris 
MAGNAVOX 
= 13 COLO 
ae Scat GB 


ep ETE MONITOR 
eeree — W/SOUND! (RECONDITIONED) 


AVE BIG SSS 
WHEN YOU BUY ONE OF OUR ALL IN ONE PACKAGES 


+ Commodore 64C 


Computer 
+ Commodore 1541 
Pyar + Commodore 64C | » Commodore 64C 
* Quantum Link Computer Computer 
Software * Commodore 1541 | » Commodore 1541 
5 SOFTWARE haa pe ai a rig a 
PACKAGES INCLUDED: || * 80 Column Printer | + 80 Column Printer 
+ Advanced Tactel Fighter || * 12" Monitor * Color Monitor 
+ Infitrator I + Hamar * Quantum Link * Quantum Link 
SIMD oe Software Software NX-1000¢ $166.95 GSK 40. sin tccsoses $279.95 
NX-1000C Rainbow.....$195.95 CoN Cartage). 5 - 
NX-1001 srs 


i Color Option 
NX-1020Rainbow. 


NX-2420.... 
NX-2420 Rainbo 


ua —-) =9 


COMMODORE 1541II COMMODORE 1571 
DISK DRIVE DISK DRIVE 

1750 Clone RAM Expansion........s.r-..189 Micro C-128 Power Supply. 
Aprotek 2400 Baud Modem for 64/128....$99.95 Super Snapshot 5.0. $59, 
Cardco G-Wiz_Interiace $48.95. Yetec S, Graphix Ur. IntertC8..nnnune$29.05 


Gommecre eee . Xetec S. Graphix Sr. Inted ace. .....s.eve-e$49.95 
Excellerator Plus FSDIi Power Supply....$19.95 
OTHER ACCESSORIES FOR YOUR COMMODORE COMPUTER AVAILABLE 


Circie- Reader Service Number 187: 


COMPUTE 


A GUIDE TO 


PART TWO 


EDITED BY KANDI SYKES 
AND DANA STOLL 


UNIPHOTO/PICTOR 


ere's Part 2 of the list of 

user groups, concluding 

with those in New Jersey 

through Wyoming, APOs, 
and other countries. 


NEW JERSEY 

Info 64 Commodore User 
Group, c/o Jerry Fleischer, 
186 Delmar Ave., Glen 
Rock, NJ 07452 

Hillsdale Commodore 64 Users 
Club, 32 Esplanade Lake 
Dr., Hillsdale, NJ 07642 

Garden State Commodore & 
MS-DOS User's Group, 89 
Stratford Rd., Tinton Falls, NJ 
07724 (BBS# 201-938-3885) 

Commodore User Group of Cen- 
tral New Jersey, 112 Old 
Bridge Rd., Matawan, NJ 
07747 

Morris Area Commodore User 
Group (MACUG), P.O. Box 
492, Mt. Tabor, NJ 07878 

Rancocas Valley Users Group 
(RVUG), c/o G. C. Heath, 
806 Windsor Dr., Cinnamin- 
son, NJ 08077 (BBS# 609- 
267-7945) 

Data Exchange—Beneficial Us- 
ers Group 64/128 (D.E.— 
B.U.G. 64/128), 713 Second 
St., Dunellen, NJ 08812 

Commodore E. Brunswick Us- 
ers Group (CEBUG), P.O. 
Box 314, E. Brunswick, NJ 
08816 


NEW MEXICO 

New Mexico Commodore User 
Group, P.O. Box 37127, Al- 
buquerque, NM _ 87176 
(BBS# 505-268-4662) 

Los Alamos Commodore Us- 
ers Group, 4214-A Arizona 
St., Los Alamos, NM 87544 
(Voice# 505-662-5934) 

Taos Area Commodore User's 
Group, P.O. Box 5686, 
Taos, NM 87571 

The Southern New Mexico Com- 
modore User’s Group, P.O. 
Box 4437, University Park 
Branch, Las Cruces, NM 
88003 

Commodore Users Group of 
Roswell (CUGOR), 1619 N. 
Kansas, Roswell, NM 88201 


NEW YORK 


New York Commodore Interest 


Group (NYC=ig), 115 Essex 
St., Box #146, New York, NY 
10002 

Kids’ Computer News, Si. 
Hilda’s & St. Hugh's School, 
619 W, 114th St., New York, 
NY 10025 

Folklife Terminal Club, Box 555- 
R, Co-op City Station, Bronx, 
NY 10475 

Brooklyn Commodore User’s 
Group, c/o Grodman, 1111 
Shore Pkwy., Brooklyn, NY 
11228 (Voice# 718-331- 
3835) 

Queens Commodore Users 
Group (QCUG), P.O. Box 
129, Ozone Park, NY 11417 
(BBS# 718-366-7445) 

Commodore Users Group of 
Greater New York, 190-25 
Woodhull Ave., Hollis, NY 
11423 

N.C.C.C., P.O. Box 233, Sea 
Cliff, NY 11579 

Commodore Long Island Club, 
15 Rochelle Ct., Amityville, 
NY 11701 (BBS# 516-489- 
4061) 

Brentwood 64/128 Computer 
Club, Public Library, 2nd 
Ave. & 4th St., Brentwood, 
NY 11717 

Mohawk Valley Computer User 
Group, c/o William Nowak, 
3818 Stinson Ave., Tribes 
Hill, NY 12177 

Tri-City Commodore User’s 
Group (TCCUG), P.O. Box 
12742, Albany, NY 12212- 
2742 

Hudson Valley Commo- 
dore Club, P.O. Box 2190, 
Kingston, NY 12401 

The Commodore Computer 
Club of Syracuse, 233 Wil- 
liams St., Minoa, NY 13116 
(BBS# 315-656-3544) 

Oswego Commodore User 
Group, 402 Mahar Hall, 
State University College, 
Oswego, NY 13126 

Commodore User Group of Mas- 
sena (COMA), Star Tech, 
280 E. Orvis St., Massena, 
NY 13662 

The Niagara Falls Commodore/ 
IBM Club, 2405 Willow Ave., 
Niagara Falls, NY 14305 

Rainbow Computer Users 
Group, c/o St. James United 
Methodist Church, 4661 Por- 


ter Rd., Niagara Falls, NY 
14305 

Geneva Commodore Users’ 
Group, 25 Pine St., Geneva, 
NY 14456 

Commodore Users Group of 
Rochester (CUGOR), P.O. 
Box 23463, Rochester, NY 
14692 (BBS# 716-621-5908) 


NORTH CAROLINA 

Triad Commodore Users 
Group, P.O. 10833, Greens- 
boro, NC 27404 

Bailey’s User Group (BUG), 
P.O. Box 70, Holly Springs, 
NC 27540 

Commodore Users Group of Lin- 
colnton, Rte. 3, Box 457, Lin- 
colnton, NC 28092 

Salisbury Compute, Charles A. 
Huffman, 280 Deal Creek 
Dr., Salisbury, NC 28144 

Asheville-Buncombe —__ User 
Group (A-BUG), P.O. Box 
15511, Asheville, NC 28813 


NORTH DAKOTA 

Central Dakota Commodore 
Club, P.O. Box 1584, Bis- 
marck, ND 58502-1584 


OHIO 

The Commodore Club of Cen- 
tral Ohio (CCCO), P.O. Box 
292392, Columbus, OH 
43229 (BBS# 614-523-3459) 

Ashtabula County Commodore 
Users Group (ACCUG), 
1034 Michigan Ave., Ashtab- 
ula, OH 44004 

Basic Bits Commodore Group 
(BBCG), P.O. Box 447, N. 
Ridgeville, OH 44039 

NorthEast Ohio Computer Us- 
ers Group (NEOCUG), P.O. 
Box 196, Wickliffe, OH 
44092 

Portage County Commodore 
Family User Group 
(PCCFUG), P.O. Box 901, 
Ravenna, OH 44266 

Akron Area Commodore Users 
Group (AACUG), P.O. Box 
9293, Akron, OH 44305- 
9293 

Trumbull Commodore Users 
Group (TRUMCUG), P.O. 
Box 8632, Warren, OH 
44484 

Mahoning Valley Commodore 
Club, P.O. Box 1180, Young- 


G-5 


stown, OH 44501 

Canton/Alliance/Massillon Users Group 
(CAMUG), P.O. Box 2423, N. Canton, 
OH 44720 (BBS# 216-453-3319) 

Computer Erie Bay Users Group 
(CEBUG), P.O. Box 1461, Sandusky, OH 
44870 

Shelby Computer User Group, P.O. Box 
512, Shelby, OH 44875 

Western Cincinnati Commodore Club 
(WESTCOM), P.O. Box 89, Amelia, OH 
45102-0089 (Voice# 513-753-7387) 

Cincinnati Commodore Computer Club, c/ 
o Cure of Ars School, Berwick and Roe 
Streets, Cincinnati, OH 45227 (Voice# 
513-248-0025) 

Southwestern Ohio Commodore Users 
Group (SWOCUG), P.O. Box 46644, Cin- 
cinnati, OH 45246 

Dayton Area Commodore Users Group 
(D.A.C.U.G.), 1117 Lavern Ave., Ketter- 
ing, OH 45429 (BBS# 513-878-1408) 

Chillicothe Commodore Computer Users 
Group (ChiICUG), P.O. Box 6014, Chil- 
licothe, OH 45601 

Hancock User's Group (HUG-64), P.O. Box 
632, Findlay, OH 45839-0632 (BBS# 419- 
423-6648) 


OKLAHOMA 

Commodore User's Group of Lawton, P.O. 
Box 3392, Lawton, OK 73502 

Commodore Users of Bartlesville, 1920 
SW Santa Fe, Bartlesville, OK 74003 
(BBS# 918-336-3872) 

Tulsa Area Commodore Users Group 
(TACUG), P.O. Box 52473, Tulsa, OK 
74169-1842 (BBS# 918-428-2284) 

Osage/Kay Commodore User’s Group 
(OKCOM), 317 Woodbury, Ponca City, 
OK 74601 


OREGON 

geoMETRIX, 20224 S. Sprague Rd., Oregon 
City, OR 97045-9641 

Commodore East County (C.E.C.), 1714 SE 
35th Ave., Portland, OR 97214-5039 

Crash-64 Salem Area’s Commodore Us- 
er’s Group, P.O. Box 241, Salem, OR 
97308 (BBS# 503-585-3092) 

Lane County Commodore User Group 
(LCCUG), P.O. Box 11316, Eugene, OR 
97440 

Coos Computer Club, 2175 Everett St., 
North Bend, OR 97459-2336 (Voice# 
503-756-4408) 


PENNSYLVANIA 

A-K Valley Computer Club, 1762 Fairmont 
St., New Kensington, PA 15068 

Bettis Commodore Users Group, 592 Ar- 
bor Ln., Pittsburgh, PA 15236 

Castle Commodore Computer Club, P.O. 
Box 961, New Castle, PA 16103 

North Coast Commodore Users Group 
Erie, P.O. Box 6117, Erie, PA 16512- 
6117 (BBS# 814-459-1947) 

Centre Area Commodore Computer Club, 
c/o Neil Dowlin, 1104 S. Atherton St., 
State College, PA 16801-6001 

Blue Juniata Commodore Users Group, 23 
Oakland Ave., Lewistown, PA 17044 
(BBS# 717-248-4877) 

Huntingdon County Hackers, P.O. Box 132, 
Mill Creek, PA 17060 

Harrisburg Area Computer Group, 721 S. 


G-6 COMPUTE 


29th St., Harrisburg, PA 17111 (BBS# 
717-558-9080) 

White Rose Commodore Users Group, 
P.O. Box 7501, York, PA 17404-0501 
Lehigh Valley Commodore User Group, c/ 
o Fred Knerr, P.O. Box 2, New Tripoli, 

PA 18066 (Voice# 215-298-2516) 

Scranton Commodore Users Group 
(S.C.U.G.), P.O. Box 244, Scranton, PA 
18501-0244 (BBS# 717-489-8001) 

EPA Commodore Users Group, Edward H. 
Cohen, 1712 Aidenn Lair Rd., Dresher, 
PA 19025 

Horsham Amiga/64, 20-A Lumber Jack Cir., 
Horsham, PA 19044 

Main Line Commodore Users Group 
(MLCUG), 1046 General Allen Ln., West 
Chester, PA 19382 (BBS# 215-354-9750 
and Voice# 215-388-1581) 

Worldwide Commodore Users Group (In- 
ternational Headquarters and Share- 
ware Registry), P.O. Box 337, Blue 
Bell, PA 19422 

Buxmont Commodore and IBM Users 
Group, 1206 Cowpath Rd., Hatfield, PA 
19440 

Antelope Valley Commodore Users 
Group, P.O. Box 4436, Lancaster, PA 
17603 (BBS# 805-272-9140) 


RHODE ISLAND 

Narragansett Commodore Users Group, 
P.O. Box 8707, Cranston, RI 02920 
(BBS# 401-737-9774) 


SOUTH CAROLINA 

Greenville Commodore Users Network 
(GCUN), P.O. Box 5272, Station B, 
Greenville, SC 29606 


SOUTH DAKOTA 

Amiga and Commodore 64 Users Group, 
P.O. Box 18, Vermillion, SD 57069 
(Voice# 605-624-347 1) 


TENNESSEE 

Clarksville Commodore Users Group, P.O. 
Box 2171, Clarksville, TN 37042-2171 

Multi-User Computer Club, 213 Holly Ave., 
S. Pittsburg, TN 37380-1313 (BBS# 615- 
837-8352) 

Chattanooga Commodore Users, 1406 
Blackwell Dr., Chattanooga, TN 37412 

East Tennessee Commodore Club, P.O. 
Box 495, Knoxville, TN 37901 

Raleigh-Bartlett Hackers CUG, c/o James 
Patrick, 3457 Gatewood Dr., Memphis, 
TN 38134 


TEXAS 

Society of Computer Owners and P.E.T. 
Enthusiasts (SCOPE), P.O. Box 
833095, Richardson, TX 75083-3095 

Texas Commodore User's Group, P.O. Box 
623, Royse City, TX 75089 

Central Texas Computer Users Group, 902 
Carlisle, Killeen, TX 76541-7321 

Commodore Houston Users Group 
(CHUG), c/o Ben Daily, P.O. Box 612, 
Tomball, TX 77375-0612 BBS# 713-445- 
2484 and Voice #713-664-2484 

Southmost In Texas Commodore User’s 
Group (SITCOM), c/o Charles Duncan, 
74 Laura Ln., Brownsville, TX 78521 

Amistad Commodore Users Group, P.O. 
Box 421212, Del Rio, TX 78842 


Top of Texas Commodore (TOTCOM), Box 
2851, Pampa, TX 79066-2851 

Tri-State Commodore Users Group (Tri- 
CUG), P.O. Box 8971, Amarillo, TX 
79114-8971 (BBS# 806-355-3031) 

Commodore Users of Texas (CUT), 7007 
Memphis Ave., Lubbock, TX 79413 
(Voice# 806-792-7121) 

El Paso Commodore User Group, P.O. Box 
370934, El Paso, TX 79937 (BBS# 915- 
590-7678) 


UTAH 

Mountain Computer Society, 3898 Chery! 
St., West Valley, UT 84119 

Moab Commodore User's Group, 860 S. An- 
tiquity Ln., Moab, UT 84532 


VERMONT 

Springfield Area Computer Club (SACC), 6 
Bellows Rd., Springfield, VT 05156 

Maple Valley Commodore Users Group, c/ 
o Dave Swainbank, P.O. Box 106, St. Al- 
bans, VT 05478 (BBS# 802-524-9387) 


VIRGINIA 

Washington Area Commodore User 
Group (WAC), P.O. Box 3602, Fairfax, 
VA 22038-3602 

Dale City Commodore Users Group, P.O. 
Box 2675, Dale City, VA 22193-0265 
(BBS# 703-361-7565) 

Fredericksburg Commodore Club, P.O. 
Box 8438, Fredericksburg, VA 22404- 
8438 

Middle Peninsula Commodore User 
Group, P.O. Box 391, Gloucester, VA 
23061 (BBS#s 804-642-3697 and 804- 
642-4293) 

CURVE, P.O. Box 28284, Richmond, VA 
23228 (BBS#s 804-266-1763 and 804- 
737-7936) 

The Richmond Area Commodore Enthu- 
siasts (TRACE), 2920 Pinehurst Rd., 
Richmond, VA 23228 

Peninsula Commodore User Group of Vir- 
ginia, 211 Nina Ct., Newport News, VA 
23602 (BBS# 804-838-2118) 

Henry County Commodore Computer 
Club, c/o Doug Wilcox, 1047 Graves St., 
Martinsville, VA 24112 

Lynchburg User Group, Rte. 2, Box 180, Lyn- 
chburg, VA 24501 

Commodore Users of Lynchburg (CUOL), 
P.O. Box 3386, Rivermont Station, Lyn- 
chburg, VA 24503 


WASHINGTON 

Renton Computer Group, 11308 SE 269th 
St., Kent, WA 98031 

E/T, P.O. Box 1767, Bothell, WA 98041-1767 

South King County Commodore User 
Group (SKCCUG), P.O. Box 5241, 
Kent, WA 98064-5241 

NW Commodore User Group, 2565 Dexter 
N #203, Seattle, WA 98109 (BBS# 206- 
281-7661) 

PSACE, 1313 5th Ave. W, Seattle, WA 98119- 
3410 

University of Washington Commodore Us- 
er Group (UWCUG), P.O. Box 25878, Se- 
attle, WA 98125 (BBS# 206-281-7661) 

Commodore Bellingham User's Group 
(CBUG), P.O. Box 2756, Bellingham, WA 
98227 (BBS# 206-647-7120) 


The Lowest Prices in theWorld on 
Commodore-Ready Printers! Really!! 


~ , Sc@r* 


ONLY 


*159” ¢ 


Full color ri 
Commodore-ready! 


NX-1000C Rainbow 


Printin full color! Near-letter quality at 36 cps and high- 
speed draft at 144 cps features the new paper parking 
function. Convenient front panel controls. Great for 
extra-impact graphics and text. This is the Commo- 
dore-ready version—no additional interfaces or cables 
are required. Sug, Retail 
NX-1000C Rainbow Color Printer, 
Commodore Ready 75783 A 
LOWEST PRICE EVER! $159.95 


Quality TENEX 
Power Supplies 


From 


$3 4% 


Lifetime Warranty! 


TENEX MW 701-A. Conservatively rated at 5V 
and 1.8A, this unit for the C64 features a double- 
fused system. Its new heat-sink design allows cooler 
Operating temperatures inside the case. Lifetime 
warranty. Sug. Retail $49.95 

TENEX MW 701-A 84513 $34.95 


TENEX MW 705. Perfect for your C-1 28! This is a 
heavy-duty, switching power supply rated at 3 amps 
at SVDC. Lifetime warranty. Sug. Retail $69.95 

TENEX MW 705 90686 $49.95 


Printer Accessories 
Black Ribbon for NX-1000C/NX-1000C 


Rainbow Color Printer 75471 $5.95 


Color Ribbon for NX-1000/NX-1000C 


Rainbow Color Printer 75485 $9.95 


Dust Cover for NX-1000C/NX-1000C 


Rainbow Color Printer 77789 $8.95 


THE COMPUTER PRINTER 


ONLY 


$139” 


Ready to plug into your 
Commodore and go! 


NX-1000C 
This is the Commodore-ready version of the NX- 
1000. You can just plug it in and start printing—no 
additional interfaces or cables are required. 
Sug. Retail 
NX-1000C Printer 75060 
LOWEST PRICE EVER! $139. 95 


Don't miss out on the hottest new 
products and great prices on the most 
popular hardware and software! 
Call Today for your FREE catalogs!! 


TENEX Computer Express 
P.O. Box 6578 
South Bend, IN 46660 


(219) 259-7051 — FAX (219) 259-0300 


We gladly accept mail orders! 


COMMODORE 64 and COMMOD: 
lead-times, product prices and s 


ronics, Ltd. AMIGA is a regist 
APO, FPO, AK. HI, CN, VI, GU, and foreign orders are subject to additional shipping charges. 


Circle Reader Service Number 170 


*Shipping, Handling, Insurance 
Order Amount Charge 


rademark of Commodore Amiga Inc.. NOTE: Due to publishing 


G50 


Club 64, 6735 Tracyton Blvd. NW, Bremaer- 
ton, WA 98310 

University Place Commodore Home Users 
Group (UPCHUG), P.O. Box 11191, Ta- 
coma, WA 98411-1101 (BBS# 206-565- 
0690) 

Lewis County CBM Users Group, 
c/o Al Kistenmacher, 2476 Pell-Mc- 
Donald Rd., Chehalis, WA 98532 

Tri-City Commodore Computer Club (TC 
CUBED), P.O. Box 224, Richland, WA 
99352-0224 (BBS# 509-588-6822) 


WEST VIRGINIA 

Bluefield User Group (BUG 20/64), P.O. 
Box 1190, Bluefield, WV 24701 

Commodore Home User’s Group (CHUG), 
81 Lynwood Ave., Wheeling, WV 26003 


WISCONSIN 


Lakeshore Commodore Core, 519 
Westwood Dr., Sheboygan Falls, WI 
53085 

Computer Hobbyists Involved in Personal 
Systems (CHIPS), P.O. Box 1006, West 
Bend, WI 53095 

Wisconsin Association of Vic/C= Enthu- 
siasts (WAVE), 1020 Kurtis Dr., Elm 
Grove, WI 53122 

Milwaukee Area Commodore Enthusiasts 
(M.A.C.E.), P.O. Box 26216, Milwaukee, 
WI 53226 

Madison Area Commodore Users Group 
(MACUG), P.O. Box 1305, Madison, WI 
53701-1305 (BBS# 608-277-9775 and 
Voice# 608-831-6995) 

Price County Computer User Group, 630 
Knox St., Prentice, WI 54556 


WYOMING 

Cheyenne Association of Computer En- 
thusiasts (CACE), P.O. Box 1733, Chey- 
enne, WY 82003-1733 

Casper Commodore Users Group 
(CCUG), c/o Crazy Mountain Software, 
511 E. 2nd St., Casper, WY 82601 


U.S. ARMED SERVICES ABROAD 

The Muenster Garrison User’s Group, c/o 
Mr. Maki, 583rd Ord Co., APO, NY 
09078 

Commodore Computer Users Group—Hei- 
delberg, P.O. Box 232 (147th Postal), 
APO, NY 09102 

Chicksands Computer Club (C cubed)— 
England, c/o Erik Pedersen, Box 148 
6950th ESG, APO, NY 09193 


USER GROUPS OUTSIDE THE U.S. 
AUSTRALIA 


Commodore Computer Users Group 
(QLD), P.O. Box 274, Springwood Qld., 
Brisbane, Queensland 4127, Australia 

Commodore Hornsby User Group, P.O. 
Box 1578, Hornsby Northgate, N.S.W. 
2077, Australia (BBS# 61-02-484-2874) 

C64 Computer User, P.O. Box 826, Young, 
N.S.W. 2594, Australia 

Melbourne Commodore Computer Club, 
PO. Box 177, Box Hill, Victoria 3128, Aus- 
tralia 

Southern Districts Commodore Users 
Club, 186 Elizabeth Rd., Morphett Vale, 
S.A 5162, Australia (BBS# 61-08-322- 
2716) 


G-8 COMPUTE 


BELGIUM 

C64 User Group, Thauvoy Jesabel, Chee. 
De Malines, 3, B-1970 Wezembeek-Op- 
pem, Belgium 


BRAZIL 
Tcs Computer Club, Rua Job Lane 650, 
04639 Santo Amaro, Sao Paulo, Brazil 


CANADA 
Alberta 


Commodore Users of Edmonton (C.U.E.), 
9550 83rd St., Edmonton, AB, Canada 
T6C 3A1 (BBS#s 403-466-7656, 403-454- 
2832, 403-459-7522, and 403-484-9200) 


British Columbia 

Cariboo Commodore 64 User Group, c/o 
Nick Sardy, P.O. Box 634, 150 Mile 
House, BC, Canada VOK 2GO 

Chilliwack Community Computer Club, 
P.O. Box 413, Sardis, BC, Canada V2R 
1A7 

Port Coquitlam Computer Club, 1752 Ren- 
ton Way, Port Coquitlam, BC, Canada 
V3B 2R7 (BBS# 604-942-0947) 


New Brunswick 

Moncton Users Group, Box 2984 STN A, 
Moncton, NB, Canada E1C 8T8 (BBS# 
506-387-7963) 

North American Commodore User Group 
Association (NACUGA), 
c/o Dave Quinn, Box 2984, Sta. A, Monc- 
ton, NB, Canada E1C 818 


Ontario 

Brampton User’s Group (BUG), P.O. Box 
384, Brampton, ON, Canada L6V 2L3 
(BBS# 416-455-3610) 

Ottawa Home User Group, P.O. Box 4165, 
Sta. C, Ottawa, ON, Canada K1Y 4P3 

TPUG, 5334 Yonge St., Ste. 116, Willowdale, 
ON, Canada M2N 6M2 (BBS# 416-733- 
2933) 


Quebec 

Commodore 64 De |’Estrie, c/o Keith An- 
drews, 805 Belmont, Sherbrooke, PQ, 
Canada J1H 5P4 (Voice# 819-565-8750) 


Saskatchewan 

Commodore User's Group of Sas- 
katchewan (C.U.G.S.), c/ 0 Barry Birch- 
er, 182 Coldwell Rd., Regina, SK, Cana- 
da S4R 4K8 (BBS#s 306-543-7683 and 
306-949-8605) 

Saskatoon Commodore Users Group 
(SCUG), c/o O.B. Harvey, 2614 A Haul- 
tain Ave., Saskatoon, SK, Canada S7J 
1R6 (BBS# 306-249-4959) 


COLOMBIA 

Commodore Club Medellin, c/o Hector 
lvan Londono, Apartado Aereo 1231, 
Medellin, Colombia 

ComSoft Commodore 64/128/ Amiga User 
Group, c/o D. F. Cardenas or E. Lopez 
de Mesa, Apartado Aereo 9872, Cali, 
Colombia 


COSTA RICA 

Club Commodore de Tibas, Marvin Vega, 
P.O. Box 516, Tibas, San Jose, Costa 
Rica 


EGYPT 

Commodore 64/128 User Group, 15 Dr. Ma- 
hegobe Thabet St., Agoza-Giza, Egypt 
(Voice# 020-347-6149) 


ENGLAND 

Independent Commodore Products User 
Group, P.O. Box 1309, London, N3 2UT, 
England 

Independent Commodore Products Users 
Limited, 45 Brookscroft, Linton Glade, 
Croydon, CRO SNA, England 


INDIA 


Bombay Commodore Club, c/o Haji Bilal 
Malbarwala, Apna Ghar Housing Soci- 
ety, Bldg. No. 46, B Wing, Lokhandwala 
Complex, Versova, Andheri (West), Bom- 
bay 400 058, India 


JAPAN 

Commodore Fan Club, c/o Koji Sugimura, 2- 
1-10-1107 Higashi-Taishi Yao Osaka, Ja- 
pan 581 


MEXICO 

Arcano 17-Commodore Group, Calle Plata 
3307, Villa San Alejandro, Puebla, Pue. 
72090 Mexico (BBS# 91-22-480-722) 

Club Commodore de Juarez, Calle del Man- 
antial #1448, Ciudad Juarez, Chihuahua, 
Mexico 32500 (BBS#s 011-52-16-17- 
3130 and 915-544-5549) 

Club de Usuarios Commodore de Chihua- 
hua (CUCC), R. Calderon #801, Chinua- 
hua, Mexico 31240 (BBS#s 14-13-12-91 
and 011-52-14-13-12-91) 


NEW ZEALAND 

Christchurch Commodore User Group, 
P.O. Box 4665, Christchurch, 8000, New 
Zealand (BBS# 0064-03-355-3896) 

Waikato Commodore Computer Users’ 
Group (W.C.C.U.G.), P.O. Box 787, Ha- 
milton, New Zealand 


PAKISTAN 

RAOASIM Commodore User Group, 465- 
C, Satellite Town, Gujranwala, Pakistan 

TIGLON, c/o Ahmed Jamal, P.O. Box 7237, 
A.H. Rd., Karachi-74400, Pakistan 


PERU 

SoftSpa, c/o Diego or Juan Tejero Acha, Av. 
Central mz. AT #5, Los Alamos de Mon- 
terrico, Lima 33, Peru 


SWITZERLAND 


Computer Anwender Club, Postfach 29, 
8042 Zurich, Switzerland 


If your group is not listed, contact us at this 
address: 


Commodore 64/128 User Group Update 
COMPUTE's Gazette 

324 W. Wendover Ave., Ste. 200 

Greensboro, NC 27408 ia} 


GAZETTE 
DISK L/BRARY 


VALUE-PACKED SOFTWARE 
AT AFFORDABLE PRICES 


All Gazette disks are menu-driven for ease of use—and they feature complete 
documentation. Just load and you're ready to go! 


SpeedScript $11.95 
COMPUTE Publications’ most popular program 
ever. Powerful word processing package includes 
SpeedScript for the 64, SpeedScript 128, spelling 
checkers for both 64 and 128 versions, plus an 
additional dozen support programs, including 
mail-merge and word-count utilities. 


Gazette Index $7.95 
Every article and department from Gazette—July 
1983 through December 1989 issues—is indexed: 
features, games, reviews, programming, “Bug- 
Swatter,”’ “Feedback,” and the other columns. 
Disk features pull-down menus, help screens, 
superfast searching/sorting capabilities, and 
much more. 


Best Gazette Games $9.95 
Best dozen arcade and strategy games ever 
published in Gazette all on one disk. All games for 
Commodore 64. Titles: Crossroads I/: Pandemo- 
nium, Basketball Sam & Ed, Delta War, Heat 
Seeker, Omicron, Powerball, Q-Bird, Trap, Arcade 
Volleyball, Mosaic, Power Poker, and Scorpion 1. 


PSS Se 


All 6 DISKS FOR ONLY $49.95! 


1 SPECIAL OFFER! 


t All prices include shipping & handling. 

+ SpeedScript O $11.95 
i Gazette Index O $ 7.95 
rT Best Gazette Games O $ 9.95 
i Gazette's Power Tools O $ 9.95 
r The GEOS Callection O $11.95 
1 128 Classics O $11.95 
i Special 6-Disk Offer O $49.95 
LU Subtotal 

: Tax” 

t Outside U.S. or Canada** 

SS Total 

t 

L 


{Residents of North Carolina and New York add appropriate sales tox. Canadian orders, add 7% goods and services fax. 
** For delivery outside the U.S. or Canada, add $1 for surface mail or $3 for airmail. All orders must be in US. funds drawn on a US. bank. 


Gazette’s Power Tools $9.95 
Fourteen of the most important utilities for the 

64 ever published in Gazette. For serious users, 
Titles: MetaBASIC, Disk Rapid Transit, Mob Maker, 
Ultrafont+, Quick!, Disk Editor, Basically Music, 
PrintScreen, 1526 PrintScreen, Fast Assembler, 
Smart Disassembler, Comparator, Sprint Il, and 
Turbo Format. 


The GEOS Collection $11.95 
Gazette’s best 13 programs for GEOS and GEOS 
128 users. Selection includes utilities, applications, 
and games. Titles: Super Printer Driver, Skeet, File 
Saver, Help Pad, Word Count, Directory Printer, 
Quick Clock, SlideShow, File Retriever, Screen 
Dumper, Font Grabber, GeoPuzzle, and 
GeoConverter. 


128 Classics $11.95 
Thirteen of Gazette’s best 128 programs, including 
utilities, games, and applications. Titles: 
MetaBASIC 128, RAMDisk 128, 80-Column Disk 
Sector Editor, MultiSort, Block Out, Miami Ice, 

The Animals’ Show, Cribbage, XPressCard, Sound 
Designer, Video Slide Show, Math Graphics, and 
3-D BarGrapher. 


ee 


A $13.00 SAVINGS! 


Name 

Address 

City State zip 

Amount Method of 

enclosed $ payment © Check or Money Order 


Mail to Gazette Disks (for orders over $20) 
324 W. Wendover Ave., Ste. 200 
Greensboro, NC 27408 


Credit card no. 
Signature (required) 
Daytime phone number 


Exp. date 


i 
i 
i 
i 
i 
i 
i 
O VISA or MasterCard : 
i 
i 
i 
i 
i 
uJ 
i 
I 


Ne ee | 


REVIEWS 


BACK TO THE 
FUTURE II 


Join Marty McFly as he trav- 
els through time again in 
Back to the Future II. The mov- 
ie tells the comic, disjointed 
story of time travel in Doc's 
DeLorean time machine. The 
software is mostly an arcade 
game with a couple of puz- 
zles added. 

The object of the game is 
to make your way through 
five levels of play to retrieve 
a sports almanac stolen by 
old Biff in 2015 and given to 
young Biff in 1955. Three of 
these five levels are simple 
arcade games, and two are 
logic puzzles. While the idea 
is intriguing, the program 
Promises more enjoyment 
than it delivers. The documen- 
tation, which is brief but well 
written, ties the game to the 
movie by describing the 
film's opening scene and 
then provides the user with 
background _ information 
about each play level. 

The game opens with 
some elegant graphics se- 
quences. On the first level 
you must maneuver a hover- 
board (a flying skateboard) 
through the streets of Hill Val- 
ley in the year 2015. Your mis- 
sion is to reach the town hall 
before running out of time or 
depleting your energy. 

Maneuvering the hover- 
board is simple and fun. You 
can move freely in all direc- 
tions, accelerate, brake, and 
jump. It is essential to learn 
to time these last two maneu- 
vers accurately, since you 
must sometimes wait for pow- 
er points as they drop from 
the sky. Try learning to at- 
tach yourself to the back of 
a passing car for a joyride. 

When you reach the pond 
at the end of the last street, 
you'll know how to get to the 
town hall and complete the 
mission if you've seen the 
movie. Anyone who hasn't 


G-10 COMPUTE 


seen the movie will still quick- 
ly figure out how to complete 
the first task. Running out of 
time never seems to be an ob- 
stacle. Your time is extended 
whenever you reach the end 
of any of seven streets that 
lead to the town hall. 
Maintaining your energy 


um earns you the most 
points. 

To aid you along the way, 
speed, acceleration, and 
power bonuses regularly 
drop from the sky. Do not 
miss an opportunity to gath- 
er power points, as these 
will restore all lost energy. 


Semmens EEEREDERERRGRERRESSEEERERREE? 


SoSoers 


Scone B 


TIME 


4 hen 
TORRITHBE 77 


Marty McFly can hitch a ride through danger-filled streets. 


level, on the other hand, is 
considerably more difficult. 
A roving gang on hover- 
boards, old Biff with his 
cane, stray dogs, cars, mo- 
bile trash cans, and radio- 
controlled hovercraft harass 
you along the way. Coming 
in contact with any of these 
enemies lowers your energy 
level. You can punch your op- 
ponents on the hoverboards, 
but it seems better to avoid 
gang members rather than 
confront them. 

Cars, dogs, and hover- 
craft are sufficiently powerful 
to knock you from your hover- 
board in one shot if you run 
into them head-on. Man- 
holes, slick spots, and curbs 
do limited damage. Along 
the way you can pick up 
caps, shoes, soda cans, 
newspapers, or plutonium 
for extra points. Perhaps be- 
cause of the obvious dan- 
ger, scooping up the plutoni- 


The best overall strategy is 
to remain near the middle of 
the screen, pick up all items 
in the street, avoid all items 
on the sidewalks, and use 
quick, lateral movements to 
evade obstacles. Back- 
ground graphics are bright, 
colorful, and well conceived, 
but sprites are jagged with 
muddy colors. It is fascinat- 
ing, however, to watch the 
coordination of so many 
sprites with the smoothly 
scrolling backgrounds, but 
the program is not without 
flaws. Your hoverboard can 
move faster than the back- 
ground, so when you reach 
the edge of the screen, you 
have to wait for the back- 
ground to catch up. Occa- 
sionally, the action on the 
screen overwhelms the com- 
puter, making the sound- 
track and character move- 
ment erratic. 

The second level is a log- 


ic puzzle in which you must 
get Marty's girlfriend, Jennif- 
er, out of a house without her 
being detected. You control 
both Jennifer and the other 
people in the house by open- 
ing doors two at a time. 
When a door is opened, a 
room's occupant will move to 
an adjoining room. At no 
time should Jenny share a 
room with anyone. 

The house is viewed from 
above, making it difficult at 
first to differentiate the char- 
acters, but Jenny is the one 
on the far left. You are expect- 
ed to race the clock while 
planning your solution, but 
the Run/Stop key turns off 
the clock, so running out of 
time is never a problem. This 
level is a nice change of 
Pace because it requires 
more planning than reflex ac- 
tion. The puzzle, however, is 
not very challenging. The 
third level is a return to ar- 
cade action with a special em- 
phasis on violence. The ob- 
ject is to reach the end of the 
street safely, avoiding 
armed villains, flying barrels, 
rocks, and Frisbees. Your var- 
ious karate kicks and punch- 
es can eliminate most ene- 
mies, but the individual with 
the semiautomatic weapon 
is virtually impossible to con- 
quer or pass. This level's use 
of gratuitous violence is a 
disappointment, and its con- 
nection to the movie’s story 
line is tenuous. The fourth 
scene also is linked weakly 
to actual movie action, but it 
takes a more imaginative 
turn. Here you are to solve a 
sliding block puzzle while rac- 
ing the clock. One added 
twist is that the block puzzle 
is animated. 

The fifth level is another 
street race in which you 
must retrieve the stolen alma- 
nac. The toughest part of 
this level is reaching it. Sav- 
ing games in progress is not 
a feature of this program, so 
you must complete the first 


The Gazette 
canny I 
Manager 


(Formerly PowerPak) 


Harness the productivity 
power of your 64 or 128! 


Turn your Commodore into 

a powerful workhorse, keep track 
of finances, generate reports 
in a snap, manage your 
money in minutes— 

all with the new 1991 
Gazette Productivity 
Manager! Look at all 
your 64/128 Productivity 
Manager disk contains. 


ORDER YOUR 
1991 GAZETTE 
PRODUCTIVITY 
MANAGER 
TODAY! 


GemCalc 64 & 128— 

A complete, powerful, user- 

friendly spreadsheet with all 
the features you’d expect 
in an expensive commercial package 
(separate 64 and 128 versions are included). 
Most commands can be performed with a single keypress! 


Memo Card—Unleashes the power of a full-blown 
database without the fuss! Nothing’s easier—it’s a 
truly simple computerized address file. Just type in 
your data on any one of the index cards. Need to edit? 


Just use the standard Commodore editing keys. (MasterCard and Visa accepted on orders with subtotal over $20). 
Finished? Just save the data to floppy. What could be [| © ©©}©)©)©)©3. UTS" 
easier? Oo YES! Please send me __ Productivity Manager disk(s) 


($14.95 each). 

——— Subtotal 

——— Sales Tax (Residents of NC and NY please add appro- 
priate sales tax for your area. Canadian orders, add 
7% goods and services tax.) 

——— Shipping and Handling ($2.00 U.S. and Canada, $3.00 
surface mail, $5.00 airmail per disk.) 

—— Total Enclosed 

—Check or Money Order MasterCard — VISA 


Financial Planner—Answers all of those questions 
concerning interest, investments, and money manage- 
ment that financial analysts charge big bucks for! You 
can plan for your children’s education and know 
exactly how much it will cost and how much you need 
to save every month to reach your goal. Or, decide 
whether to buy or lease a new car. Use the compound 
interest and savings function to arrive at accurate 


Credit Card No. 


estimates of how your money will work for you. ; (Required) 
Compute the answer at the click of a key! arena 

Address 
DON’T MISS OUT ON THIS : =: Town 


Send your order to Gazette 1991 Productivity Manager, 
324 W. Wendover Ave., Ste. 200, Greensboro, NC 27408. 


POWERFUL WORKHORSE! 


| 
| 
| 
| 
| 
| 
| 
| 
I 
I 
| 
| 
! 
1 signature 
| 
| 
I 
I 
| 
| 
| 
| 
i 
| 
| 
| 
* 


REVIEWS 


four levels each time you 
play before you get a 
chance to tackle the final 
one. As an arcade game the 
program succeeds, but as a 
computer reproduction of 
the movie, it falls far short. 
The movie worked because 
the action was supported by 
dialogue which gave the view- 
er a disjointed sense of time 
travel. If Back to the Future 
/l included a level that al- 
lowed the player to interact 
with other characters in or- 
der to help Marty find his 
way through time, the game 
would be vastly improved. In- 
stead, the characters and 
time settings add nothing to 
the action, and they seem to 
have been chosen only as a 
vehicle for standard arcade 
fare. If joystick action is your 
thing, you'll enjoy this pro- 
gram. If, however, you're ex- 
pecting to step into Marty 
McFly's shoes and warp 
through time, the game will 
leave you flat. 

JIM SMITH 


Commodore 64 or 128—$29.95 


IMAGE WORKS 

Distributed by Konami 

900 Deerfield Pkwy. 

Buffalo Grove, IL 60089-4510 
(708) 215-5100 


Circle Reader Service Number 316 


FASTFINGERS 


Students of sound, take 
note: If you're interested in 
shaping sounds or learn- 
ing about synthesis and if 
you have access to a Mat- 
tel Intellivision keyboard, 
check out Fastfingers. 
Dan Laskowski devel- 
oped this program (original- 
ly in 1984) with two basic 
thoughts in mind: to ex- 
plore the sound synthesis 
abilities of the 64 SID chip 
and to allow the 64 to act 
as a lead synthesizer 
when attached to a full- 
size external keyboard by 


G-12 = COMPUTE 


means of a special connec- 
tor. He is making the pro- 
gram available again on a di- 
rect basis, but it should be 
noted that it is in limited sup- 
ply with even fewer key- 
board connectors. Availabil- 
ity of the Intellivision key- 
board is uncertain. At this 


tain keys on the two bottom 
rows (referred to in the man- 
ual as piano buttons) are re- 
served for playing. Octaves 
are changed by selecting 


them from the Sound 
Shaper menu. Other keys ac- 
cess preset sounds, 


chords, and a sound se- 


Tanase ss 


Learn more about sounds and music with Fastfingers. 


writing, Laskowski has three 
of them and will sell an en- 
tire package for $119. With 
an eye (or is it ear?) toward 
reaching student musicians, 
he offers special rates to mu- 
sic educators. 

Because it is somewhat 
dated, Fastfingers’ presenta- 
tion is not as slick as those 
of some other programs. Its 
four menus are a bit crowd- 
ed and clunky-looking, but 
you get used to them. The 
sounds, which are the impor- 
tant part, are amazing. 
Fastfingers was written be- 
fore the MIDI explosion, yet 
Laskowski programmed it 
for 256 sounds and even 
coaxed an extra suboctave 
out of the SID chip. 

While developing sounds 
and recording a track on 
disk are clearly easier with 
an external keyboard (not 
tested here), the computer 
keyboard is sufficient. Cer- 


quencer; permit loading and 
saving sounds from disk; 
and allow you to record, 
play back, and control 
sounds you've created. 

This first menu, Play 
Mode, is the default when 
no control keys are 
pressed. Pressing (and hold- 
ing) Shift pulls down the 
Sound Shaper and Effects 
menu, the Control key pulls 
down the Sound Banks, and 
Control/Shift accesses the 
Sound Shaper. 

The preset sounds are sim- 
ply eight sounds taken from 
the sound bank for easy ac- 
cess. You can use these, re- 
place them with others from 
the bank, or create your 
own and install them. One- 
finger chords are available: 
three major chords, three mi- 
nor ones, and six others. 
The chords can be can- 
celed at the press of a key, 
which causes all three voic- 


es to play the same note in 
unison. The sound se- 
quencer allows you to trig- 
ger arpeggios to play auto- 
matically. 

To simplify things, Laskow- 
ski makes use of the familiar 
style of a cassette record- 
er's buttons to record, re- 
wind, fast-forward, and play 
your works. On playback, 
adjustments can be made 
to speed and sound. With 
this you can create melo- 
dies, arpeggios, and even re- 
cord a “walking bass line” 
by means of the transposer 
function. Once you have 
laid out your sounds the 
way you want them, record- 
ed your melody, and ar- 
ranged your transposer and 
arpeggio, you can save the 
whole arrangement to disk. 
This Save is an old-fash- 
ioned save which dumps eve- 
rything onto a disk under 
the lump title Sounds. This 
limits you to one file per 
disk, and the manual rec- 
ommends dedicating the 
disk to Sounds only, al- 
though you could probably 
use it to save something not 
connected with Fastfingers. 

If this is sounding too tech- 
nical for you, it gets more 
so. Now we come to the 
heart of this program: build- 
ing sounds. While not sophis- 
ticated enough to include 
an on-disk tutorial (this is on- 
ly a one-disk program), the 
Fastfingers manual guides 
you through modifying exist- 
ing sounds and creating 
new ones. One chapter 
shows you how to play with 
such effects as Flang, 
Pulse Width Kick, Glide, 
Thicken, Weow, Swirl, Wah 
(1&2), Tremolo, Pswirl, Vi- 
brato, Phase Shifter, and Dig- 
ital Distortion. Effects are soft- 
ware effects used to simu- 
late or replace hardware ef- 
fects, and they work on all 
three voices. 

Another chapter teaches 
you about building sounds, 


beginning with the selection 
of voice 1, 2, or 3. You learn 
about adjusting the oscilla- 
tors up and down in semi- 
tone increments, selecting 
waveforms, using harmon- 
ics, using (or bypassing) fil- 
ters, and adjusting the 
ADSR (Attack, Decay, Sus- 
tain, and Release). Students 
of sound with the patience 
to check out each minor ad- 
justment will have a wealth 
of sound to explore. 

The dearth of new soft- 
ware for the 64 has sent de- 
velopers back to their clos- 
ets to have another look at 
older programs to see if 
there's something to dust off 
and reissue. Fastfingers is 
one such program, and the 
question arises, does it still 
stand up? We are com- 
pelled to give a qualified 
Yes. 

There are musical pro- 
grams with far slicker presen- 
tations. The tutorial and ani- 
mation in the Sight and 
Sound 3001 series leap to 
mind. Fastfingers lacks feed- 
back in that it doesn’t tell 
you what sound (preset or 
sound bank) or even what oc- 
tave is in current use. It 
seems to us, particularly if 
you are using this setup in 
performance as Laskowski 
says you can, you ought to 
have an onscreen reminder 
of what you've selected. On 
the other hand, the range of 
sounds is almost mind-bog- 
gling. Providing for the use 
of a 48-key external key- 
board is a unique touch 
that may send some young 
musicians hunting through 
the classified ads to pick up 
a used one. 

Laskowski is first a musi- 
cian, a fact that becomes ob- 
vious when talking with him 
or reading his manual. Al- 
though certainly not the on- 
ly person to envision the 64 
as a synthesizer, he is the on- 
ly one to take it to this de- 
gree. In Fastfingers he has 


taken an unusual slant on 
the 64 and developed a 64 
oddity, a program that's cer- 
tainly not for everybody, but 
will certainly intrigue those 
with an interest in music. 
DAVE and ROBIN MINNICK 


Commodore 64 or 128—$29.95, 
$69.95 with keyboard connector 


DAN LASKOWSKI 
9078 Copperfield Ct 
Windsor, ON 
Canada N8S 4H3 
(519) 948-3915 


Circle Reader Service Number 317 


NIGHTBREED 


From out of the dark shad- 
ows of your mind came the 
mystical thriller Nightbreed, 
amovie that had people hold- 
ing tightly onto their seats. 
Now, it’s your joystick that 
you'll want to grab tightly be- 
cause Nightbreed is now an 
arcade game on your 64. 

You assume the role of 
Boone, a guy with some psy- 
chiatric problems, and begin 
your journey at the gates of 
Necropolis, a local grave- 
yard. The object of the 
game is to save the 
Nightbreed from an evil or- 
ganization that calls itself 
Sons of the Free. Who are, or 
what is, Nightbreed? 
Nightbreed is a race of be- 
ings older than mankind, 
who possess the power to 
change shape and form. 

Once the game begins, 
you'll constantly be chal- 
lenged with different objec- 
tives. Even though it's an ar- 
cade-type game, you must 
complete many different 
tasks before progressing to 
a different level of play. 

At the bottom of the 
screen is the game's status 
panel. Here you'll find valu- 
able information to help you 
during play. There's a list of 
objects in Boone's posses- 
sion, as well as a power lev- 
el that indicates his injuries, 
life number, and status as ei- 


GAMES, GAMES, GAMES! 
| (6102) ADVENTURE ROAD / 1 - Contains 4 adventure games: Scary, Africa, Adventure & more. 
5 (6123) ADVENTURE ROAD /2 - 10 textgraphic adventure games including SLEUTH. 
5) (6124) ADVENTURE ROAD /3 - 8 texgraphic adventure games including HACKER. 
77 (6049) C-128 GAMES / 1-40 
umn Galactic, Castle and Damsels. 
| 80 column Star Trek. 
5) (6054) C-128 GAMES /2 - 80 col- 
| umn Norad, Wargames, not Lunar 
Land. Print Spock8Kirk. 
| 7 (6088) C-54 GAMES / 1 - Action 
games like Robbers, Whirly Bird, Blue Thunder & more. 
| 5 (6089) C-54 GAMES 2 - Lotto, Attack Force, Star Trek, Joust, Derby, Defcon & more. 
7) (6097) IN THE MALL’ 1 - Contains 14 arcade games. Try your skill on these gems. 
7) (6099) IN THE MALL '2 - Contains 14 arcade games. Includes Moondog, Skiing, & mora. 
7) (6142)IN THE MALL 3 - 12 more arcade games including BOULDER DASH and KANGA. 
7 (6100) IN THE PITS | 1 - Contains 7 car games. Includes Dragster, Dodge Cars & more. 
=] (6101) LADY LUCK ’ 1 - Contains 10 casino games. Roulette, Craps, BJ, Poker & more. 
| 5 (202) Laby Luck 2-10 gambling games including ONE ARMED BANDIT, and 21. 
I (6203) LADY LUCK | 3 - 17 gambling games including DODGE CITY POKER and KENO. 
| FI (6098) ON THE BOARDS / 1 - Contains 11 board games. Includes Yahtzee, Battleship & more 
| 5 (6119) ON THE BOARDS / 2 - 12 board and card games including battleship and chess. 

7) (6120) ON THE BOARDS / 3 - 17 more board and card games including CRIBBAGE and BINGO. 
| 7 (6118) PUB/BOARD GAMES - Dans, Bowing, Pool, Checkers, Backgammon, Chess, and mor. 
7 (6204) THE FINAL FRONTIER / 1 - 10 action filed space games including METEOR SHOWER, 
| 3 (6206) THE FINAL FRONTIER 3 - 18 action filed space games including CANYON RUNNER. 
7 (6207) THE FINAL FRONTIER | 4 - 18 action filed space games including SPACE DEFENDER. 

7] (6104) THE SPORTING LIFE - Contains Golf, Miniature Golf, Baseball 64, Boxing and Trap. 
J (6208) THE SPORTING LIFE | 2 - 19 games relating to sports including BOWLING and BOXING. 
7 (6108) VICTORY SOFTWARE | 1 - The first disk of shareware games by Victory Software. 


ec 


| Please send order, payment, name, address and daytime phone # to: 


Pee 
| Laradise Sytware 
Hours: Mon-Fri, 9am-Spm PST 


7657 Winnetka Ave, Ste 328-C, Winnetka CA 91306 


Circle Reader Service Number 129 


ther monster or man. 

You contro! Boone with a 
joystick to punch, kick, or 
shoot your way past the 
many different creatures 
that pursue you. Each con- 
frontation with a monster will 
have different challenges for 
you to overcome. For exam- 
ple, | found the Fatman fairly 
simple to overcome, yet the 


Sons of the Free were chal- 
lenging, using everything 
from rocket launchers to gre- 
nades in an attempt to stop 
me. Also, you'll find each en- 
emy has a unique power 
that makes it dangerous. 
The Fatman moves slowly, 
but he vomits, and the vomit 
is poisonous to the touch. 
Since this is an arcade-type 


Should Boone defeat the grenade tosser, he still must defuse the time 
bomb before he can continue his quest to save the Nightbreed. 


G-13 


REVIEWS 


thriller, you can expect other 
gross experiences through- 
out the game. 

In your path you'll encoun- 
ter such graveyard charmers 
as the Snakeman, the Hop- 
per, Flying Teeth, a Head 
Monster, and a Roof Crawl- 
er. This last fellow delights in 
dropping rocks on you. 

One unique feature you 
will find is the passkey which 
allows you to skip certain 
parts of the game. The key is 
a password-type system 
that uses graphics instead of 
text. You create a passkey- 
from various pieces dis- 
played on the game's back- 
ground scenes, Using the cor- 
rect key allows you to skip to 
certain points in the game. 

Making a map of the 
game is also useful. The 
game can be confusing if 


you don't know where you've 
been or where you need to 
go. As with many games of 
this type, you can move ina 
variety of directions and en- 
counter a number of foes as 
your hero attempts to com- 
plete his quest. A map helps 
you avoid many blind alleys. 

At first glance | thought 
that Nightbreed was going 
to be a simple arcade game 
and that completing it would 
be an easy task. | was 
wrong, It provides plenty of 
nonstop action that should 
have you grasping your joy- 
stick for quite a few hours of 
nerve-wracking play. 

The graphics are very 
well done, and the game re- 
mains true to the movie's 
theme. If you're looking for a 
good action-packed game, 
then turn down the lights, 


grab some popcorn, and 
boot up a copy of 
Nightbreed! 

JEFFERY SCOTT HALL 


Commodore 64 or 128—$14.95 


OCEAN OF AMERICA 
Distributed by Electronic Arts 
1820 Gateway Dr. 

San Mateo, CA 94404 

(415) 571-7171 


Circle Reader Service Number 318 


POWER DRIFT 


For a fast-paced, hard- 
edged race through five dif- 
ferent road courses, try Pow- 
er Drift. Pit your skills in this 
arcade-style release from Ac- 
tivision against 12 other rac- 
ers who are out to win at all 
costs. Speed through hairpin 
turns at over 200 kph and 


plunge over hills into steep 
drops, just get to the finish 
line first. 

At the start of the game, 
choose the race terrain you 
want and a driver. Terrains in- 
clude city, beach, desert, 
countryside, and riverside. 
There's also a wide selection 
of male and female drivers 
from which to choose. 

As the starting lights turn 
from red to green and the 
race begins, the other driv- 
ers will leap ahead of you. 
Push forward on your joy- 
stick to accelerate. This will 
take you to about 130 kph. 
Change from low to high 
gear by pressing the firebut- 
ton. In high gear your car 
reaches its maximum speed 
of 224 kph. Pulling back on 
the joystick acts as a brake, 
but with a little practice you'll 


coupon today. 


Individual issues of the disk are available for 
$9.95 (plus $2.00 shipping and handling) by writing 
to COMPUTE, 324 West Wendover Avenue, Suite 
200, Greensboro, North Carolina 27408. 


“Gazette Gallery,” where each month we present the 
very best in original 64 and 128 artwork. 

So don’t waste another moment. Subscribe to- 
day to COMPUTE’s Gazette Disk and get 12 issues 
for only $49.95. You save almost 60% off the single- 
issue price. Clip or photocopy and mail completed 


G14 


Yes, save time and money! Subscribe to the Gazette 
Disk and get all the exciting, fun-filled Gazette pro- 
grams for your Commodore 64 or 128—already on 
disk! 

Subscribe today, and month after month you'll 
get all the latest, most challenging, and fascinating 
programs published in the corresponding issue of 
COMPUTE. 

New on the Gazette Disk! In addition to the 
programs that appear in the magazine, you'll also 
get outstanding bonus programs. These programs, 
which are often too large to offer as type-ins, are 
available only on disk—they appear nowhere else. 
As another Gazette Disk extra, check out 


COMPUTE 


YES! Start my one-year subscription 
to COMPUTE’s Gazette Disk right away 
for only $49.95.* 


O Payment enclosed (check or money order) 


OCharge OMasterCard O Visa 
Acct. No. Exp. Date 
Signature 
(Required) 
Name 
Address 
City 
State/ ZIP/ 
Province Postal Code 


Mail to COMPUTE's Gazette Disk, P.O. Box 3250, Harlan, IA 51593-2430 


"Residents of NC and NY, please add appropriate sales tax for your area. Canadian 
orders, add 7% goods and services tax. 


be able to maintain top 
speed throughout the entire 
course. Just watch for other 
drivers. 

As you progress around 
the course, your time, 
speed, position, and lap num- 
ber are posted at the top of 
the screen. To advance to 
the next round, you must 
place in the top three finish- 
ers. Racing in the higher 
rounds is more difficult and 
there's a greater possibility 
of ramming other drivers. 
When this happens, the re- 
sult is a dramatic spin-out 
with you hurtling across the 
course. When your car final- 
ly comes to a halt back on 
the road, try to make up lost 
time. Don't overdo it or you'll 
end up in another spin-out. 

As long as you keep plac- 
ing within the top three, you'll 


continue advancing to high- 
er levels. Finish back in the 
pack and the race is over. 
One of the best features of 
this game is that it restarts 
very quickly. You don’t have 
to sit and wait for it to reload 
every time. At the end of a 
game you can try another 
course and change drivers if 
you want. 

Power Drift's graphics are 
colorful and interesting, but 
if you have any intention of 
placing in the top three, you 
won't have time to notice 
your surroundings or the 
scenery as it flies by. One in- 
teresting effect is the road; it 
seems to be suspended in 
air. There are no guard rails 
and on hills the road often 
drops like a rollercoaster. 
Watch out for those blind 
drops though. A car could 


be just over the crest and if 
you bump one at high 
speeds, you could go crash- 
ing off the road. 

There is a steady, pound- 
ing pulse to the background 
music that keeps you racing 
through the turns and hills. 
Even when you're adding 
your name to the list of high 
scorers, the powerful beat 
continues. It complements 
the action as you move 
through the courses. 

The player's guide is easy 
to understand. It explains 
how to load the program and 
how to use the joystick. All 
you have to know is which di- 
rection to push or pull the joy- 
stick and how to change 
gears. It's all clearly ex- 
plained in the manual. 

~ In all, Power Drift is not a 
game to play for hours on 


end, but itis fun. There's plen- 
ty of white-knuckle action as 
you speed around each 
course and drift through the 
corners. Tension builds as 
you progress. The first few 
races are fairly easy and the 
courses somewhat forgiving, 
but accidents become more 
frequent and the amount of 
driving skill needed increas- 
es as you advance to higher 
levels. 

So, wait for the green 
light, happy racing, and 
don't forget to buckle up! 
ALISON CHRISTENSON 


Commodore 64 and 128—$29.95 


ACTIVISION 

3885 Bohannon Dr. 

Menlo Park, CA 94025 

(415) 329-0800 a) 


Circle Reader Service Number 319 


COMPUTE’s 


SpeedScript Disk 


A powerful word processing 


package for Commodore 64 


and 128 owners 


A Great Deal for Commodore 


° SpeedScript for the 64 


YES! Send me 
| SpeedScript Disk. 
I've enclosed $11.95 plus $2.00 postage and handling. (Outside 
U.S. and Canada add $1.00 for surface mail or $3.00 for 
| airmail.) 


| ORDER NOW! 


* SpeedScript 128—80-column version 


copies of COMPUTE’s 


Amount 
Sales Tax" 
Total 


* Spelling checkers Address 


* Mail merge State 
Mail personal check or money order to 


Commodore SpeedScript Disk 
324 W. Wendover Ave., Ste. 200 
Greensboro, NC 27408 


| Residents of North Carolina and New York, add appropriate tax for your area. Canadian 
orders, add 7% good and services tax 


* 80-column preview for the 64 


| 
| 
* Date-and-time stamp | 
| 
| 


* Turbo save and load 


* Plus more than a dozen other SpeedScript 
support utilities all on one disk (including 


full documentation) Please allow 4-6 wecks for delivery. Program available only on 5%-inch disks. 


Questions and 
answers 

about converting 
programs 


from Commodore 


G-16 


format to 

IBM, KoalaPads, 
calendars, 
BBSs, and more 


COMPUTE 


FEEDBACK 


Three Questions 

Is it possible to convert Com- 
modore type-in programs to 
IBM-compatible format in a rel- 
atively easy way for those 
with limited knowledge of GW- 
BASIC or machine language 
programming? 

As | am changing over to a 
PC, am | right in assuming 
that an alternative version of 
COMPUTE that is PC specific 
and excludes the Gazette sec- 
tion will be available? 

From my current address la- 
bel on my magazine, do | sur- 
mise correctly that my sub- 
scription is current through 


June 1991? 
C. W. M. ANDERSON 
SANDTON, SOUTH AFRICA 


Commodore BASIC and GW- 
BASIC are similar in many re- 
spects, and some elementary 
programs entered in one lan- 
guage will run if entered into 
the other. Simple print state- 
ments, mathematical formu- 
las, and commands such as 
GOSUB, GOTO, IF-THEN, 
and FOR-NEXT pose few prob- 
lems when making the 
change from one version to 
the other. Problems arise, how- 
ever, when it comes to colors, 
machine language routines, 
PEEKs and POKEs, and other 
commands that are machine 
specific. Some commands in 
BASIC 7.0 for the 128, for ex- 
ample, would cause a 64 to 
crash. There are ways around 
many of these problems, but 
it usually takes a good work- 
ing knowledge of BASIC to 
make the conversion work. 

If you are subscribing to 
COMPUTE’s Gazette edition, 
you already are receiving all 
the PC-related material that 
we publish each month. 
There’s no reason to change 
your subscription unless you 
want to drop the 64/128 cov- 
erage; the price is the same. 
Some COMPUTE subscrib- 
ers, however, do not get the 
64/128 material. 


The month and year print- 
ed on adaress labels indicate 
the final edition of your cur- 
rent subscription. Since the 
June issue was the last one 
you were scheduled to re- 
ceive, | hope you renewed 
your subscription in time to 
read this reply. 


What's a Koala? 


| subscribe to Gazette Disk, 
and | enjoy your “Gallery,” 
but, forgive me, what is a Ko- 
ala? | gather that it is more 
than a marsupial. Do you 
need light pens or a mouse to 
create graphics with it? 

One more comment. Could 
you explain why your new 
GOS (Gazette Operating Sys- 
tem) menu on Gazette Disk 
will not allow me to directly 
load any previous Gazette 
Disk programs? It gives the 
disk information, but the selec- 


tion turns blue and sits there. 
JOSEPH RUFFINI 

NORANDA, PQ 

CANADA 


A KoalaPad is a graphics tab- 
let that connects by cable to 
a 64's joystick port. With its ac- 
companying software, you 
can create colorful pictures on- 
screen by moving your finger 
or a stylus across the pad's 
surface just as if you were 
drawing a picture with pencil 
and paper. The pad is no long- 
er in production, but used 
units can often be found. Its 
multicolor format is a popular 
one with Commodore artists. 
The new Gazette Operat- 
ing System is compatible 
with pre-GOS disks, so you 
should be able to run pro- 
grams from them. Load and 
run the menu program that 
contains GOS; then swap 
disks. Now click on the disk 
icon. When the disk menu ap- 
pears, click on Directory. 
GOS will read the current 
disk’s directory and print it in 
a window. Scroll through the ti- 
tles and click on the program 


you wish to run. The red 
band highlighting your selec- 
tion will turn blue. Click again 
on the disk icon and select 
Run Program when this win- 
dow opens. GOS has been 
streamlined to make it oper- 
ate faster than it did original- 
ly, but you should still be able 
to access and run other 
disks. It also lets you copy 
disks and files, delete and re- 
name files, obtain disk and pro- 
gram information, print files, 
and perform numerous other 
applications with joystick or 
cursor keys. 


Wide Open Spaces 

| have recently started typing 
in a few Gazette programs 
with The Automatic Proofread- 
er. Since | am not a program- 
mer, my understanding of 
what | am typing is rather lim- 
ited. Because the listings in 
your magazine are printed in 
columns, it is not always 


clear when to leave spaces. 
HANS SPARREBOOM. 

TOFIELD, AB 

CANADA 


When entering programs in 
Commodore BASIC, spaces 
are usually optional. Program- 
mers may put spaces be- 
tween words, variables, or 
commands in their listings to 
make them more readable, 
but the computer doesn't re- 
quire them. Most program- 
mers do not include spaces 
simply because it saves 
space, computer memory, 
and typing time. If they leave 
them in and a column line be- 
gins with a space, our listing 
program will usually print the 
word SPACE within brackets. 
Since most spaces are option- 
al, The Automatic Proofreader 
ignores them also unless 
they fall between quotation 
marks. To illustrate, load and 
run Proofreader; then enter 
the following statement. 


100 IF A$ <> “Y” THEN 100 


OMNI 
TIME CAPSULES 


Now the magazine of the future can be 
kept for the future. Store your issues of 
OMNI in a new Custom Bound Library Case 
made of black simulated leather. It’s built to 
last, and it will keep 12 issues in mint 
condition indefinitely. The spine is embossed 
with the gold OMNI logo, and in each case 
there is a gold transfer for 
recording the date. 

Send your check or money order 
($8.95 each; 3 for $24.95; 6 for $45.95) 
postpaid USA orders only. Foreign 
orders add $1.50 additional for 
postage and handling per case. 

To: OMNI MAGAZINE 
Jesse Jones Industries, 499 E. Erle Ave. 


Phila., PA 19134 


CREDIT CARD HOLDERS (orders over $15) 
CALL TOLL FREE 1-800-972-5858 
Or mail your order, clearly showing your 
account number and signature. Pa. residents’ 
add 6% sales tax. 
SATISFACTION GUARANTEED 


In English the line reads, “If A-string 
does not equal the letter Y, then go to 
line 100.” This line could be used in a state- 
ment to halt a program until the letter Y— 
and only the letter Y—on the keyboard is 
pressed. 

Proofreader should print MJ in the up- 
per left corner of your screen when you 
press Return. Now go back, delete all the 
spaces, and press Return again. You 
should still get MJ, indicating the line is 
still entered correctly. Spaces make 
code easier to read, but often they are op- 
tional to the 64. 

Now go back and insert a space after 
the first quotation mark and in front of the 
Y and try it. Proofreader will return a dif- 
ferent value this time because " Y" is not 
the same thing as “Y" and it would affect 
how the program runs. 


Diary Needed 


I'm an active 14-year-old looking for a 64 


program that is a diary. 
BRIAN S. MULCAHEY 
HAMILTON, OH 


Almost any word processor could be 
used as a diary. You could write as little 
or as much as you want and then save 
each entry with a filename that repre- 
sents the date, such as SEP20. There is 
a program called Notepad 64 (Novem- 
ber 1988) that could prove useful. This 
machine language program resides in 


Computer Diagnostics, by Real Software 
‘Alter Ego, by Activision (spacity male -or- female)... 


Include $4 for shipping charges in U.S 


SOFTWARE 
CLOSEOUTS 


For Commodore 64 & 128 


$81 BARGAINS, Your Choice . 
Phantasie Il, Wargame Construction, Guestron, 8-24, Questron i 
Roadwar 2000, Panzer Strike, Demon's Winter, Eternal Dagger, 
1st Over Germany, Heroes of the Lance. 

AVALON-HILL DEALS 
Darkhorn, Gulf Strike, hip 
Dy, Run, Parthian Kings, Jupter Mission, Pane’ Japd, TAC, Tsushima, 
Legionnaire, Panzers East, Maxwell Manor, Quest for Space Beagle, 

Guderian, Computer Stocks & Bonds, Super Sunday, Ripper. 

INFOCOM BARGAINS, Deadline, Starcross, Suspended, Zork 2 or 3... $6 each 
ACCOLADE LIQUIDATION, Your Cholee ONLY $5 each!! 
Ace of Aces, Fight Night, Jet Boys, bal, Killed Unt 
Dead, Law of the West, PSI 5 Trating ‘company 

$8G BARGAINS, Your Choiet . $16.50 each 
‘American Civil War Volume 1, 2 of 3, Fire King, Halis of Montezuma, 

Panzer Battles, MacArthur's War, Rommel Battles for North Africa, 

ACTIVISION BARGAINS, Your Choice 

Christmas Model Kit, Crossbow, Ocean’ 


OTHER GREAT DEALS 


Super Expander 64 Cartridge ... 
Partner 128, by Timeworks (C/128 only) 

Alt, by Box Office 

Aliens, by Activision 

‘Assembler, by Commodore 

Printed Word -or- The Tool, by Valueware 

Congo Bongo, by Sega (cartridge) 

Entertainer -or- Educator, by Valueware 

Electronic Address Book, by Batteries Included 

GO, by Hayden (4,000-year-old Chinese board game) 
Home Manager, by Valueware ... 

Masterpiece, by CRL (Drawing & pain rapes system) 
Practicalc 64, by Practicorp 

Practicale I, by Practicorp en 

Spite & Malice -or- Slinky, by Cosmi. 

Heswriter 64, by HesWare (cartridge) 

Turtle Toyland Jr. -or- Tri-Math, by HesWare 

Aitack of tha Mutant Camas, by HesWare(ariridge) 
Magic Madness, by Artwor 

LEATHER GODDESSES OF Piida08, by infocom 
MINDSHADOW, by Activision... = 
Tag Team Wrestling, by Datasoft . 


$15 each 


. $10 each 


$14.50 each 
ps. 


dinctnes 88 
WOW!! $5.00 
‘wow!! 3) 00 


TO ORDER, SEND CHECK OR MONEY ORDER TO: 


DRAWER 5160, SAN LUIS OBISPO, CA 93403-5160 
$8 for Canada, $10 for Int), CA orders add 6 sales tx 


1-800-676-6616 
CREDIT CARD ORDERS ONLY, PLEASE!!!! $25 Minimum 
To receive our complete catalog of ove 2.000 closeout tems forall computer types 


‘end 82 in cau tarps to te above adres. The cats FREE th aye 
To check for an tem not sted tere, cal (805) 544-8616 


World Geography 
for Commodore 64 shat eee I 
a8 L 


SAI LANKA 


a 


Bion 
ON 
26,81 

Full-color 3-D rotating globe! 
World Geography is the fun way to 
learn the world’s countries, flags, capi- 
tals, populations, languages and cur- 
rencies in an entertaining 1- or 2-player 
educational game for the whole family, 
“The entire presentation is outstanding... 
This is really an achievement!” 

—Commodore Magazine 

“An awesome achievement... the execution 
is flawless.” —COMPUTE1’s Gazette 
C64 only $19.95, Apple II $24.95 postpaid! 
Also available in Spanish and German 
Injured Engine (C64 only) $14.95 
An engine diagnostic simulation by IMAGIC 
Fish-Ed (C64 or Apple II) $17.95 
Elementary spelling and number concepts 
Speller’s Duel (C64 only) $12.95 
Spelling program in a game show format 

Full refund if not completely satisfied! 


800 829-5551 
Outside US call 408 462-1551 
BOBCO Interactive Software 


200 7th Ave., Suite 111, Santa Cruz, CA 95062 


£008 sone 


Circle Reader Service Number 161 


a" 


Save a lot of time and 


EMERGENCY COMMODORE START-UP KITS 


Circle Reader Service Number 112 


« 


e repairing your own Commodore computer. All chs are direct socket plug- 


money 
ins (no soldering). Each kit includes all you need to “start up’ /revive your broken computer. Onginally 
bister-packed” for government PXS worldwide, this series is now available to you. Total cost savings per kit 


far exceeds purchasing chips on an individual basis. 
Kit #4 Part #DIA16 C-64 


Kit #3 Part #DIA15 C-64 
‘Syriptoms: No power up » Screen 
lockup + Flashing colors * Game car 
tridge problems 
Contains: IC #PLA/906114, Diagnos: 
tiian #6, Fuse, Chip pullar. Scho: 
mate, Utity cartridge and Diag, Test 
Disk with 9 programs. 

An $87.50 value for only $29.95 


Sympioms: 


iO} 


Sound problems + Keyboard prob 
lems » Serial device problems 
Contains; IC #65264, IC #6581. D.. 
agnostcian #6, Fuse, Crip puller 
Basic schematic. Unity cart, and 
Diag. Test Disk with 9 progr 

A $79.80 value for only $29.95 


Kit #5 Part #DIA17 1541/1571 
jymptoms: Drive runs continuously * 
‘Motor won't step + Read errors + No 
power up 
Contains: C #6502. 1C#6522. 
901229 Fuse, Chip puller, Basic scho- 
matic, Diagnostcian #6 and Diag 
Test Disk with 9 programs. 


A $70.10 value for only $29.95 


ft Problems * 


ams, 


= ) THE G 


We Ship Worldwide. 


GRAPEVINE GROUP, INC. 
chestnut St., Suffern, NY 10901 
1-800-292-7445 or 914-357-2424 


Fax: 914-357-6243 


Circle Reader Service Number 128 


Fight it with a 
Memorial gift to 
the American 


Heart Attack. 


Heart Association. 


THE AMERICAN HEART 
ASSG@LIATION 
MEMORIE BOSS 


x) 


4, EE S ISIS 


4, 
@P American Heart Association 


This space provided as a public service. 


f COMMODORE DIAGNOSTICIAN II ‘ 
Originally developed as a software package, then converted to a readable 
format, the Diagnostician has become a fantastic seller. With over 32,000 sold 
worldwide, the Diagnostician |! utilizes sophisticated cross-reference grids to 
locate faulty components (ICs) on all C64 and C1541 computers (C128/64 
mode). Save money and downtime by promptly locating what chip(s) have failed. 

No equipment of any kind needed. The Diagnostician II has just been updated 
with 30 changes to take advantage of the new 64C combination chips/RAM 
changes found on new CBM boards. Success rate from diagnosis-to-repair is 


98%. Includes basic schematic. 


$6.95 


(Available for Amiga computers at $14.95) 


w CE) 


The Grapevine Group, Inc. 


We Ship Worldwide 


3 Chestnut Street, Suffern, NY 10901 


Hours: 9-5 EST 


1-800-292-7445 or 914-357-2424 * Fax: 914-357-6243 


Circle Reader Service Number 197 


G-18 


COMPUTE 


FEEDBACK 


memory while your computer 
is working on another BASIC 
program. This means you can 
call it up at the touch of a 
key, jot down some thoughts, 
and then continue with your 
BASIC program. You can also 
save the notes with any file- 
name you like. One limitation 
to the program, however, is 
that each note can be no 
more than 1000 characters in 
length. That's enough to fill 
one screen. Back issues of 
this disk and any other 
Gazette Disk prior to October 
1990 can be ordered from 
our Greensboro, North Caroli- 
na, office for $5, plus $2 for 
shipping and handling. 


Worldwide User Group 
| am working to start a world- 
wide association of Commo- 
dore user groups. As support 
for the 64 dwindles, user 
groups play a more important 
role in supplying users with 
help and information. | be- 
lieve an association of user 
groups would be beneficial, es- 
pecially for smaller groups. 

| would love to hear from us- 
er groups who would like to 
help me organize this group 
or who would like to join it. 
Just drop me a line, and I'll 
bring you up-to-date on 


what's happening so far. 
JOSH JACOBY 

98-1689 HAPAKI ST. 

AIEA, HI 96701 


Keep Gazette posted about 
your activities, Josh. User 
groups represent a great re- 
source of information for Com- 
modore users, and we encour- 
age their growth. In this issue 
we finish our two-part listing 
of user groups in the U.S. and 
other countries. If you are not 
already a member, we recom- 
mend you contact a group in 
your area or see about joining 
one by mail. 


Back to the Boards 


Rick Lembrée’s article on 


BBSs (March 1991) was an ex- 
cellent introduction to what 
has become one of the last 
bastions of dedicated Commo- 
dore users. Using a BBS is 
the best way possible to sup- 
port each other and enjoy the 
potential of the still-powerful 
64s and 128s. 

Volunteering as a sysop is 
a rewarding experience, not 
only for the knowledge 
gained, but for the enjoyment 
of knowing that you are pro- 
viding others with a medium 
for sharing and communicat- 
ing. If you want to try your 
hand at running a board, 
there still are plenty of poten- 
tial members out there who 
would eagerly join a new 
board. | especially urge Com- 
modore users to participate 
on a local BBS. Any comput- 
er user who doesn't is miss- 
ing out on an excellent re- 
source of knowledge and en- 
tertainment that is easily avail- 
able to anyone with a mo- 
dem. I'm sure many COM- 
PUTE readers would be inter- 
ested in reading more articles 
about operating a BBS, as 
well as about the many fea- 
tures different boards have to 


offer. 
FREDERICK T. MERRITT 
ST. PAUL, MN 


At the end of your BBS article 
in the March issue, the suppli- 
er of the C-Net system was list- 
ed incorrectly. The correct 
name is Perspective Soft- 
ware. The BBS number for sup- 
port of this package is (313) 
981-1524. Also, | feel that 
this system was not given 
enough credit as a commer- 


cial BBS available for the 64. 
JEFF FENSTERMAKER 
NEWBURY, OH 


Thanks for bringing the correc- 
tion to our attention, Jeff. Be- 
cause C-Net was /ast on our 
list of commercial systems for 
the 64 does not mean it was 
considered the least. We sim- 


ply tried to list as many of the 
current BBS products as we 
could find for our readers’ con- 
venience, and on any list 
someone has to be last. The 
listing was not meant to be an 
endorsement by either Mr. 
Lembrée or Gazette. 


Bug-Swatter 

Several readers wrote in to 
say that they have experi- 
enced problems with Cross 
Aid (March 1991) when they 
try to use Shift-D to delete mis- 
spelled or unwanted words. 
The documentation was not 
clear in stating that you must 
first enter maintenance mode 
by entering the word that's to 
be deleted, followed by Shift- 
Return. The delete function 
can be invoked by pressing 
Control-D to erase the word. 


Several readers also informed 
us of a problem with Castalia 
(May 1991). We discovered it 
has a peculiarity that affects 
some machines at some 
times. The problem causes 
the screen to go blank when 
you first run the program. If 
you experience this situation, 
there is no danger or program- 
ming fix required; just try run- 
ning the game again. On the 
128, the problem is especial- 
ly easy to fix. If the problem oc- 
curs, it only does so when an 
attempt is made to run the pro- 
gram for the first time after 
powering up. If this happens, 
reset the computer to 64 
mode by holding down the 
Commodore key while press- 
ing the reset button. You 
should have no problem the 
next time the program loads. 


If you have a question, com- 
meni, or problem, we want to 
hear from you. Send your let- 
ters to Gazette Feedback, 
COMPUTE Publications, 324 


West Wendover Avenue, 
Suite 200, Greensboro, North 
Carolina 27408. a 


Telecommunicating 
with GEOS 
requires special 
attention. Here 

are some tips to 
make the 

process easier. 


GEOS 


Steve Vander Ark 


GO ONLINE 
WITH GEOS 


This won't come as a big sur- 
prise to many of you. If you 
haven't already discovered it, 
you've certainly read articles 
on the subject or heard com- 
puter users expound about it. 
Itis telecommunicating, and it 
is great. 

It's great, but it's also con- 
fusing, intimidating, and a 
whole lot of other things that 
keep many people from plug- 
ging in a modem and dialing 
up a bulletin board system 
(BBS), | avoided telecommuni- 
cations for these reasons for a 
long time. | was afraid | would 
make a fool of myself trying to 
learn my way around. | 
thought I'd find a hostile world 
full of people who were in the 
know and wouldn't be too hap- 
py dealing with a novice pok- 
ing around at 300 baud. 

Boy, was | wrong. When a 
friend finally convinced me to 
hook up his modem on my 
128 and | timidly dialed a lo- 
cal BBS number, | had no idea 
what a giant leap | was taking. 
Over the next four months, | dis- 
covered a lot of new computer 
friends who didn't give a hoot 
that | needed to call up a 
menu every time or that | ac- 
cidentally logged myself off 
when | meant to upload a file. 
They offered support, advice, 
a little good-natured teasing, 
and friendship. 

Now I'm online all the time. 
This electronic alternative re- 
ality is populated by a wide va- 
riety of users. They call using 
IBMs, Macs, Amigas, and, of 
course, Commodores. 

That's where GEOS comes 
in. It wasn't long before | dis- 
covered a number of people 
on various local BBSs who 
shared my enthusiasm for 
GEOS, and we began compar- 
ing notes. We exchanged ide- 
as, gave each other hints for 
using various applications, 


and swapped utilities down- 
loaded from other BBSs. 

But _telecommunicating 
with GEOS requires some spe- 
cial rules. GEOS has its own 
unique way of running a Com- 
modore computer, and termi- 
nal software and bulletin 
boards aren't designed to han- 
dle the differences. The stum- 
bling block is the structure of 
GEOS disk files. A file exists 
on a disk as a scattering of in- 
dividual blocks of data, linked 
together with predefined cod- 
ing. GEOS uses a different 
code from the one built into 
the 64’s system, which means 
that if you try to use normal 
Commodore file commands 
on a GEOS file, the system 
won't know how to put the var- 
ious chunks back together. 
That's why you can't copy a 
GEOS file using a normal file 
copier; the same is true for 
uploading or downloading. 

In order to send or receive 
a GEOS file by modem, it 
must be converted temporari- 
ly into Commodore DOS-com- 
patible format. William Cole- 
man has written a conversion 
utility called Convert, which 
has become something of an 
unofficial standard for han- 
dling GEOS files online. This 
utility should be the first 
GEOS file you download, It 
can be loaded and run with BA- 
SIC and will convert a pro- 
gram or sequential file to one 
that can be used by GEOS. 
Once you have Convert, 
you're in business. 

Any GEOS file you down- 
load using your normal termi- 
nal program will be a standard 
sequential or program file un- 
til you switch into GEOS and 
run Convert; the whole proc- 
ess takes a matter of a few sec- 
onds. Convert can work both 
ways. If you have a GEOS file 
that you'd like to upload, you 
can convert it into a sequen- 
tial or program file that your ter- 
minal program can handle. 
Convertcan be found on Quan- 


tumLink and on many local 
BBSs. (File Converter is a sim- 
ilar program published in COM- 
PUTE!'s Gazette, April 1989.) 
If you'd rather stay in GEOS 
without returning to the Com- 
modore DOS, there is one ter- 
minal program available 
which operates within the 
GEOS environment. It in- 
cludes the Convert utility as an 
option, which makes handling 
GEOS files a breeze. This pro- 
gram is called geoTerm. It, 
too, was written by Coleman, 
with versions available for the 
64 and the 128. Each version 
includes many features, includ- 
ing a 9K capture buffer for the 
64 and a 30K buffer for the 
128, programmable function 
keys, built-in utilities to convert 
the buffer to and from true AS- 
Cll and PET ASCII, as well as 
the above-mentioned Convert 
program. 

The screen can be run in 
40, 53, or 80 columns. You 
can also access either drive 
for uploads or downloads, 
scratch files, and so on. 

Whether you use geoTerm, 
available from RUN magazine, 
or another terminal program, 
you'll find many GEOS users 
out there who are glad to hear 
from you. BBS Post, a bulletin 
board in Michigan, has a 
GEOS file area. The sysop, Bis- 
mark, says he gets more calls 
for the Commodore area on 
his IBM board than for any oth- 
er. I've put many of the public 
domain utilities mentioned in 
this column on BBS Post. If 
you call long distance, you 
may download GEOS files on 
your first call. The number is 
(616) 531-1346. 

For the price of a long dis- 
tance call, it's not a bad place 
to start. But there are probably 
people on bulletin boards 
right in your hometown who 
would love to hear from you. 
Why not give them a call? 

Steve Vander Ark can be 
reached on QuantumLink. His 
handle is SteveV 14. a 


G-19 


integers, and 
do other clever 
things with 


the help of binary 


G-20 


fractions 


COMPUTE 


MACHINE LANGUAGE 


Jim Butterfield 


GIVE IT A NUDGE 
WITH BINARY 
FRACTIONS 


BASIC uses a number system 
called floating point (or scien- 
tific notation), which is power- 
ful but complex to code in ma- 
chine language. Often, you 
can accomplish what you 
need through the use of fixed- 
point binary fractions. 

In conventional base 10 
mathematics, if you divide 7 
by 3, the answer is 2 with a re- 
mainder. But if we continue 
the division, we establish that 
7 divided by 3 gives 
2.33333... . 

Exactly the same thing hap- 
pens in binary calculations. In 
binary, we might write 7/3 as 
%111 divided by %11; using 
any of several division meth- 
ods, we produce a first result 
of %10 with a remainder of 1. 
But if we don't stop at the “bi- 
nary point” equivalent of a dec- 
imal point and provide some- 
where tostore the extra fraction- 
al result, we will generate 
%10.01010101 . . . and cut 
off the endless fraction. 

In hexadecimal notation, '/2 
works out neatly as $.80, but 
1/3 is the repeating series 
bites} ay 

You've noted that you must 
trim an endless value at some 
point. In machine language 
coding, that amounts to decid- 
ing how many bytes you will 
use to hold the fractions. 
Roughly speaking, each byte 
gives the equivalent of 2.4 deci- 
mal digits of accuracy. 

Binary fractions fit nicely in- 
to the whole scheme of math 
coding. Such numbers add, 
subtract, multiply, and divide 
in the same way as integers. 
For example, you might want 
to multiply a value by 8 and 
then divide by 5 to convert 
miles to kilometers. 

Perhaps the most popular 
use of binary fractions is to 


nudge an integer value high- 
er. For example, suppose you 
started with zero and added a 
value of 1/3 repeatedly. The in- 
teger part would bump to the 
next higher value every three 
operations. This kind of nudg- 
ing has many applications in 
programming. 

Aprogrammer might be han- 
dling one or more sprites; 
each sprite is expected to 
move from time to time. How 
do we control its speed? Sup- 
pose we want it to move grad- 
ually, without leaping across 
the screen. Let's say we just 
want to nudge its position. By 
repeatedly adding fractional 
values to its location, we will 
eventually cause the sprite’s lo- 
cation to move to the next pix- 
el at regular intervals. 

When working in high-reso- 
lution graphics, it’s often desir- 
able to draw a line that's not 
quite horizontal (or vertical). 
Binary fractions will help us do 
the job. 

To create a line that’s al- 
most horizontal, you want to 
step across the horizontal (x) 
coordinates, but how do we 
plot the vertical (y) coordi- 
nates for each line? Nudge 
the y coordinate value. If the 
line were 50 pixels wide by 10 
pixels high, you'd nudge the y 
coordinate by a value of '/s; as 
you sweep across the 50 x pix- 
els, the y coordinate would trav- 
el exactly the 10 pixels that 
are needed. 

Let's write a small program 
that should be good on almost 
any Commodore 8-bit comput- 
er that will show this kind of cal- 
culation. You'll place a value 
to be nudged at address 
$2100 with a fraction byte at 
$2101. You'll place the nudge 
value at $2102 and $2103, 
then step through and show 
the result. 

For easy display, you'll start 
the value at $31 (decimal 49). 
This corresponds to the ASCII 
character 1; you can print it to 
show how it changes. 


2000 LDA #$31 
2002 STA $2100 


You will add 1/2 ($80) to your 
starting value; that allows 
easy rounding of the result. A 
hi-res graphics line would 
look better with this kind of 
rounding, for example. 


2005 LDA #§$80 
2007 STA $2101 


Now store your nudge value 
in $2102 and $2103. We will 
choose a value of 1/3, hex 
$00.55 


200A LDA #$00 
200C STA $2102 
200F LDA #$55 
2011 STA $2103 


Now we have our values in 
place. We'll count our loop 
through 16 items (the initial val- 
ue plus 15 steps). 

Since we started at ASCII 
49 (1), we should end up five 
full values further along, at AS- 
Cll 54 (6). We will use X as 
our loop counter. 


2014 LDX #$00 


Following is the loop. Print 
first and then add; then test to 
see whether the loop should 
be repeated. 


2016 
2019 
201C 
201D 


$2100 
$FFD2 


$2101 
$2103 
$2101 
$2100 
$2102 
$2100 


#$10 
$2016 


That's the whole program. To 
use this routine while in BA- 
SIC, type in SYS 8192 to 
watch the character 1 as it's 
nudged through its range. 0 


Make your 
programs so user- 
friendly that 

even beginners will 
have no 

trouble entering 
valid data. 


BEGINNER BASIC 


Larry Cotton 


MAKE YOUR 
DATA ENTRY 
CRASHPROOF 


The following general-purpose 
“crashproof" data entry subrou- 
tine can be inserted into any 
BASIC: program in which 
you're asking an inexperi- 
enced user to enter data. 

The first decision is wheth- 
er to use INPUT or GET. IN- 
PUT is easier to program, but 
it's vulnerable to errant key- 
board presses, such as cursor 
up/down, Del, Clr, and so on. 
It's also rudely unforgiving of 
unexpected input data. GET re- 
quires more programming 
and is vulnerable to garbage 
collection, a rather nasty habit 
Commodore computers have. 

For a few simple daily en- 
tries, however, garbage collec- 
tion shouldn't be a problem. 
So let's use GET. 

First, let's have all keys re- 
peat. It's helpful when testing 
the program, and it can be 
fun. Here's the first line which 
does that and clears the 
screen: 


10 POKE650,128:PRINTCHR$ 
(147) 


Now decide on a cursor. | pre- 
fer a nonblinking one. It im- 
plies more patience. As for its 
appearance, take your pick. 
To determine which cursor 
shape to use, select a charac- 
ter from the front of the key- 
board keys. Then in immedi- 
ate mode, enter 


PRINT ASC(‘‘X”) 


This will return the value of 
your preferred character. 
(See 64 Programmer's Refer- 
ence Guide for a complete list- 
ing.) | like a thick horizontal 
line made by pressing the 
Commodore key and P simulta- 
neously. This returns a charac- 
ter string (CHR$) value of 


175. Two keys we want to rec- 
ognize are the Return key (sig- 
naling completion of an entry) 
and the Inst/Del key (for cor- 
recting a typing error). These 
are defined as constants R$ 
and D$ respectively. C$ is 
the cursor. The CHR$ values 
are from Reference Guide. 


20 R$=CHR$(13):D$=CHRS(20): 
C$=CHRS$(175) 


Now we'll write the crash- 
proof data-gathering subrou- 
tine itself, which yields raw 
data in string form which is giv- 
en the arbitrary designation of 
B$. Strings can contain let- 
ters, numbers, punctuation— 
the works. The subroutine 
can begin anywhere, so let's 
use line 100. Then change BS 
to X$. Using VAL with X$, you 
may extract the whole string 
or just the numbers. You can 
select a portion of X$ by us- 
ing RIGHTS, LEFTS, or MIDS. 
End the program for now. 


30 GOSUB100:X$=B$:END 


The first thing to do with 
the input routine is clear out 
B$; then reset the line length 
to zero. More on that later. 


100 B$=" ":L=0 


Now print your cursor (de- 
fined in line 20). The semico- 
lon ensures that anything af- 
ter the cursor will be printed 
on the same line. 


110 PRINTCS$; 


Here's where we use the 
GET statement. 


120 GETA$:IFA$="" "THEN120 


The computer goes into a 
loop until the user presses a 
key. When any key is 
pressed, that single character 
becomes A$. A$ will be exam- 
ined four times. The first time 
checks for the Return key: 


130 IFA$=R$THENPRINTDS$A$;: 
RETURN 


If the Return key is 
pressed, the cursor moves 
back one space, deleting it- 
self, and then moves to the 
next line. The subroutine 
ends with a RETURN state- 
ment. 

The second check is for 
the Del key, which indicates 
that the user is backtracking 
and erasing previously typed 
data. 


140 IFAS=D$THENGOSUB210: 
GOTO110 


At line 210 we start anoth- 
er short subroutine that will do 
the actual deleting. Then we 
want to go back to line 110 to 
print the cursor again. This 
time we're not ready to jump 
out of the subroutine yet; 
we're just deleting characters. 

The third check is impor- 
tant but fairly complicated. 
We want to limit the charac- 
ters which can be typed. 
We'll do that by examining 
their CHR$ values. Luckily, 
the values we need are in the 
range of 32 to 95, inclusive. 
According to the ASCII and 
CHR$ code chart in Program- 
mer's Reference Guide, this 
will encompass the space, all 
punctuation, all the numbers, 
all the letters of the alphabet 
(capitals only), and a few odd- 
ball symbols, such as the Brit- 
ish pound sign, brackets, and 
the left- and up-arrow keys. 
You can restrict that further if 
you wish. Here's the check: 


150 IFA$<CHR$(32)ORA$>CHR$ 
(95)ORA$=HR$(34)THEN120 


Next month I'll repeat this 
line with a detailed explana- 
tion of it. Meanwhile, try to fig- 
ure out why we don't want 
CHR$(34) and what we'll do 
next to make your programs 
virtually crashproof in the 
hands of computer novices. 0 


G-21 


G-22 


Here’s a whole 
page of nifty 
tips for the 64 
submitted 

by one reader. 


COMPUTE 


PROGRAMMER’S PAGE 


Randy Thompson 


GEZA’S PAGE 


Every so often someone 
sends me a tip that really 
sparks my interest, and | may 
center an entire column 
around such a tip. Just last 
week | got a letter from Geza 
Lucz of La Jolla, California, 
that contained 16 great tips. 
Unfortunately, we don’t have 
room for all of them, but here 
are 4 of the best. 

Although the byline at the 
top of this column is mine, the 
credit and the “Programmer's 
Page” award money go to 
Geza. Thanks for the code! 


OCEAN 


This program makes the 64's 
characters roll like the waves 
in the ocean. There are 
sound effects, too. 


JX 168 FOR 1=49152 TO 49 
258:READ D:C=C+D: 
POKE I,D:NEXT 
IF C<>16497 THEN 
{SPACE}PRINT "ERR 
OR IN DATA STATEM 
ENTS": STOP 
SYS 49152 
POKE 54278,240:PO 
KE 54276,129:POKE 
54273,34:POKE 54 
272,75 
FOR I=1 TO 15:POK 
E 54296,1:FOR J=1 
TO 5@:NEXT:NEXT 
FOR I=15 TO 1 STE 
P -1:POKE 54296,I 
:FOR J=l1 TO 200:N 
EXT:NEXT 
FOR I=l1 TO 686+IN 
T (RND (1) *166G) :NE 
xT 
GOTO 136 
DATA 120,169,35,1 
62,192,141,28,3,1 
42,21,3,169,1,141 
,18,268,133,251,1 
33,254 
DATA 173,17,2068,4 
1,127,141,17,208, 
169,129,141,26,20 
8,88,96,173,25,28 
8,141 
DATA 25,268,48,7, 
173,13,220,88,76, 
49,234,166,251,23 
2,232,232,232,232 
7232 
DATA 232,232,142, 
18,208,134,251,22 
8,254,268,4,238,2 


KX 116 


cP 126 
DA 136 


GK 146 


MP 156 


SR 166 


KR 170 
XB 186 


XH 196 


JB 288 


EH 216 


51,230,254,166,25 
3,232 

DATA 138,41,15,17 
6,134,253,189,91, 
192,141,22, 208,76 
,188,254,200,201, 
262,263 

DATA 264,265,206, 
207,207,206,205,2 
64,263, 202,201,208 
g 


FREEZE! 

This short machine language 
routine freezes program execu- 
tion whenever you hold down 
the 64's Shift key. You can 
load and run almost any 
program and use Shift as a 
Pause key. If you need to 
pause a program so you can 
go off and answer the phone, 
the Shift Lock key keeps the 
software frozen until you're 
ready for it. This freeze fea- 
ture is also great for program- 
mers who need to pause the 
computer when listing their 
programs to the screen. 


D 226 


BS 236 


EX 100 FOR I=49152 TO 49 
191:READ D:POKE I 
,D:NEXT:SYS 49152 
DATA 126,169,26,1 
62,192,141,20,3 
DATA 142,21,3,88, 
96,126,169,234,16 
2 


HF 116 


KG 126 


EF 138 DATA 49,141,21,3, 
142,26,3,88,96,32 
DATA 135,234,174, 
141,2,224,1,246,2 
46 

DATA 76,49,234,6 


SR 146 
HP 156 


COMMAND HIGHLIGHT 


Another practical utility is this 
program that highlights all of 
the commands in a BASIC list- 
ing. Line numbers and varia- 
bles appear in the usual blue 
color, while BASIC com- 
mands appear in white. 


cC 166 FOR 1=49152 TO 49 
236:READ D:C=C+D: 
POKE I,D:NEXT 

IF C<>11843 THEN 
{SPACE}PRINT "ERR 
OR IN DATA STATEM 
ENTS":STOP 

SYS 49152 

DATA 169,11,162,1 
92,141,6,3,142,7, 
3 


CH 116 


cP 126 
MG 136 


EB 14 DATA 96,16,36,36, 
15,48,32,201,255, 
24 

DATA 28,133,251,1 
34,252,132,254,16 
6,253,224 

DATA 5,240,7,169, 
5,133,253,32,210, 
255 

DATA 165,251,166, 
252,164,254,76,36 
7167,133 

DATA 251,134,252, 
132,254,166,253,2 
24,154,246 

DATA 7,169,154,13 
3,253,32,210,255, 
165,251 

DATA 166,252,164, 
254,76,243,166,208 
8,14 


GP 156 
QB 160 
DG 176 
PQ 186 
DI 196 


PP 206 


GETTING DIZZY? 


A close relative of the ocean 
trick, this program is definitely 
not recommended for the 64 
owner with a weak stomach. 
RS 100 FOR I=49152 TO 49 
266:READ D:C=C+D: 
POKE I,D:NEXT 

IF C<>13471 THEN 
{SPACE}PRINT "ERR 
OR IN DATA STATEM 
ENTS":STOP 

POKE 16383,0:SYS 
{SPACE}49152 

DATA 126,169,31,1 
62,192,141,26,3,1 
42,21 

DATA 3,169,0,141, 
18,208,173,17,208 
741 

DATA 127,141,17,2 
68,169,129,141,26 
7208,88 

DATA 96,173,25,26 
8,141,25,268,48,7 
1173 

DATA 13,226,88,76 
149,234,236,254,1 
65,254 

DATA 41,3,208,21, 
166,251,232,138,4 
5) 

DATA 133,251,176, 
189,78,192,141,17 
7208,189,94,192 
DATA 141,22,208,7 
6,188,254,24,25 
DATA 26,27,28,29, 
36,31,31,39,29,28 
DATA 27,26,25,24, 
263,204,205,206,2 
07,206 

DATA 265,204,203, 
262,201,200,206,2 
G1,202,203,6,0,8, 


Gg. q 


EG 1198 


HK 128 


RJ 13@ 


BE 146 


Kx 156 


AE 166 


Gs 176 


QP 186 


KR 196 


JC 206 
AE 216 


FG 220 


GG 239 


Best-Selling 


Commodore Books 
from COMPUTE 


Machine Language Routines for the 
Commodore 128 and 64 

By Todd D. Heimark and Patrick G. Parrish 

For both beginners and advanced ML programmers. 
585 pages. $18.95 


Mapping the Commodore 64 and 64C 

By Sheldon Leemon 

Comprehensive memory map and programmer's guide. 
324 pages. $18.95 


Music System for the Commodore 128 and 64 


The Enhanced Sidplayer 

By Craig Chamberlain 

Includes programs, utilities, and sample music. 
Book/Disk Only. 274 pages. $24.95 


Order your copies today. 


Send the appropriate amount plus $2 shipping and handling for 
each book ($4 Canadian, $6 foreign) and applicable sales tax* to: 


COMPUTE Books 

C/O CCC 

2500 McClellan Ave. 

Pennsauken, NJ 08109 
“Residents of NC, NY, and NJ add appropriate sales tax for your area, 
Canadian Orders add 7% goods and services tax. 
All orders must be paid in U.S. funds drawn on a U.S. bank. Please allow 4-6 
weeks for delivery. JUL91CP 


Big Blue Reader 128/64 
Read & Write IBM PC Disks! 


Big Blue Reader 128/64 is a fast, easy-to-use, menu driven program 
for novice and expert alike. Transfers word processing, text, ASCII, and 
binary files between Commodore 64/128 and IBM PC compatible 360K 
5.25" and 720K 3.5" disks, Includes both C64 & C128 programs. 
Requires 1571 or 1581 Disk Drive. Does not work using 1541. 

BBR 128 Version 3.1 upgrade, $18+ original BBR disk. 


Big Blue Reader 128/64 only $44.95 


Bible Search 3.1 


The only Bible Study Program with: 
1) Entire Old and New Testament on (4) 1541/71 or (2) 1581 disks. 
2) An Exhaustive English Concordance on (2) 1541/71 or (1) 1581 


disks; includes more than 700,000+ references. 
3) Incredible five (5) second look-up time, per/word, per/disk. 
4) Instant, automatic spell checking of more than 12,800 words. 
5) Boolean Search operators including AND, OR & NOT logic. 
6) Search entire Bible in 5 seconds with 1581 or Hard Drive (v3.5). 
7) A Money Back Guarantee! 
Includes: Easy-to-use, C64 and C128 (40/80 column) programs, 
printer and disk output, users guide, disk case, and more. 

ex Available on (7) 1541/71, or (4) 1581 disks. (Demo disk $5) 

KJV $49.95 vxvrvevexe NIV $59.95 
tx Any questions? Call or write for more information. 
tx NOW Available! AMIGA Bible Search 


Order by check, money order, or COD. US Funds only. 
ex FREE shipping in North America. No Credit Card orders. 
Foreign orders add $5 S/H ($12 whole Bible) 


SOGWAP Software @ (219)724-3900 


115 Bellmont Road; Decatur, Indiana 46733 


1990 Gazette Index 


programming, bug-swatter, 
feedback, and columns! 


A superb interface includes pull-down menus, help 
screens, and keyboard, joystick, or mouse control. Fea- 
tures include super-fast searching and sorting capa- 
bilities. An options screen allows you to choose text 
colors, drive number, and input device. And there’s full 


documentation on disk. 


Choose from three modes of operation—browse for quick 
scanning, view for detailed information and descriptions, 
and edit for adding items from upcoming issues—and 

print to any printer. There’s even a turboload option for 


maximum disk-access speed. 


Everything’s included! 


Features, games, reviews, 
education/home applications, 


ORDER YOUR 
1990 GAZETTE 


INDEX TODAY! 


(MasterCard and Visa accepted 
on orders with subtotal over $20.) 


r 
! CLYES! Please send me __ 5%-inch 
disk(s) ($7.95 each). 

Subtotal 


Sales Tax (Residents of NC and NY please add 
appropriate sales tax for your area. Canadian or- 
ders, add 7% goods and services tax. ) 


Shipping and Handling ($2.00 U.S. and Canada, 
$3.00 surface mail, $5.00 airmail per disk.) 


Total Enclosed 
— Check or Money Order -— MasterCard _ VISA 
Credit Card No, —____ Exp. Date 


Signature 


(Required) 
Daytime Telephone No 
Name 
Address 
City 
State ZIP 
Province Postal Code 


Send your order to 1990 Gazette Index, 324 W. 
Wendover Ave., Ste. 200, Greensboro, NC 27408. 


The robot 
revolution may 
have started 

in a way totally 
different from 


what we imagined. 


G-24 


COMPUTE 


D'IVERSIONS 


Fred D'Ignazio 


ROBOTS 
IN DISGUISE 


| was on my way to Dubuque, 
lowa, last week to train a 
group of intrepid teachers in 
the art of scavenged multime- 
dia. As | left the airplane for a 
layover in Chicago's O'Hare Air- 
port, | felt the urge to make a 
brief stop at the nearest men's 
room. After | conducted my 
business, | made my custom- 
ary stop at a washroom sink. 
The sink was broken. No han- 
dles on the water faucet. No 
water. | turned to another 
sink. Its handles were also miss- 
ing. | turned to another sink. 
All the handles were missing. 

Suddenly | heard the 
sound of running water. | 
turned around. Two men were 
standing in front of two sinks. 
Two water faucets were gush- 
ing gurgling water into two 
sink bowls. The sinks weren't 
broken after all! 

| slipped back into the bath- 
room, quietly placed my bags 
onto the bathroom floor, and 
tried to appear natural and in- 
conspicuous until the two men 
at the sinks had departed. 

OK, | thought, how did they 
make the sinks work? My first 
guess was foot pedals. After 
all, there were no faucet han- 
dles, and | hadn't noticed ei- 
ther man touching anything on 
the sink. It had to be pedals. 

| crouched in front of one of 
the sinks. No pedal. Maybe 
the pedal was tucked under- 
neath the sink bowl. | reached 
under the bowl, searching for 
the mysterious device. 

Suddenly a man walked in- 
to the room. He immediately 
halted when he saw me under 
the sink. I'm sure he was won- 
dering what a small, bearded 
man in a raincoat was doing in 
an airport bathroom crawling 
around under a sink. 

“Sink inspector,” | said, smil- 
ing and trying to appear non- 
chalant. “We have to do this pe- 


riodically.” | kind of mumbled 
the last part because the fel- 
low took a brief, critical look at 
this "sink inspector,” smirked, 
and shot out of the bathroom. 
| stood up, still trying to fig- 
ure out how to work the sink's 
faucets. Maybe if | stuck my 
foot under the sink it would 
work. | lifted my leg, leaned 
way back, and thrust the toe 
of my shoe across the sink's 
porcelain underbelly. 

Three teenagers entered 
the bathroom, jostling each oth- 
er and laughing. However, af- 
ter they saw me stroking the 
sink with my foot, they sank in- 
to immediate, puzzled silence. 

“It itches," | said, pointing 
at my foot. “This is the only 
way to scratch it.” | kept prob- 
ing the fixtures beneath the 
sink with my toes, desperately 
hoping I'd soon see water flow- 
ing into the basin. 

The teenagers did their busi- 
ness and approached a cou- 
ple of sinks. Water instantly 
sprang from their sinks’ fau- 
cets into the bowls. 

| rushed over to the teen- 
agers’ sinks. “It’s a miracle,” 
| exclaimed. | dropped to my 
knees and looked under- 
neath. “How'd you do that?” 

“Little sensor right here, 
dude,” said one of the teen- 
agers, pointing at a small red 
oval on the wall that had es- 
caped my acute observation- 
al powers. “It's easy. You 
stand in front of the sink; you 
get water. You move away; 
the water stops." The teen- 
ager stared at me and 
grinned. “You from some oth- 
er country, maybe?” 

When | was growing up in 
the 1950s and 1960s, comput- 
ers were big, new, and fright- 
ening. In those days we were 
afraid that computers would 
one day be turned into spy ma- 
chines. They would spy on us 
average citizens and report to 
“the people in power.” Much 
of this image came from the 
book 1984 by George Orwell. 


The future turned out to be 
completely different. Comput- 
ers shrank from barn-sized be- 
hemoths into cornflake-sized 
chips. As they shrank, they dis- 
appeared—into washing ma- 
chines, microwaves, automo- 
biles, watches, toaster ovens, 
and bathroom scales. 

Instead of a single big broth- 
er running a single big comput- 
er, we now have zillions and zil- 
lions of little computers acting 
as little brothers. Little comput- 
ers are now quietly watching 
us from inside refrigerators, tell- 
er machines, filling stations, 
vending machines, and bath- 
room sinks. They help us go 
about our business and then 
patiently wait for the next hu- 
man being to come their way. 

For years we've been wait- 
ing for the robot revolution. 
We've pictured it as an elec- 
tromechanical second coming 
with robots who look like hu- 
mans, rolling off factory lines 
to rescue human beings from 
the grind and toil of daily life. 

Maybe the robot revolution 
has already started. Except 
it's totally different from what 
we imagined. Instead of giv- 
ing robots a human shape, we 
are quietly giving them the 
shape of the comfortable, fa- 
miliar appliances. Remember 
General Electric's motto: We 
bring good things to life. 

Maybe the being | met in 
that O'Hare bathroom was al- 
most alive, a primitive precur- 
sor on anew evolutionary lad- 
der. Maybe it was a little like 
Australopithecus or Neander- 
thal man, a robot from the 
dawn of a new generation of 
intelligent robots. These ro- 
bots won't have to have legs, 
arms, or hands. They won't 
have to resemble humans. 
That would be too scary! 

Instead they'll just keep 
evolving at a faster rate, while 
retaining the outward appear- 
ance of our familiar, cozy, old 
appliances. Except they won't 
have any handles! Oo 


PROGRAMS 


SPANISH VOCABULARY 
QUIZ 


By Christopher M. Stoy 

Learning a foreign language can be dif- 
ficult. Not only do you need to learn a 
new set of grammar rules, but you must 
also learn an entirely new vocabulary. 
The only way to do this is by continually 
repeating the new words until they be- 
come second nature. 

Finding someone to quiz you on 
your new vocabulary can be equally dif- 
ficult. After all, who wants to sit around 
asking you drill questions all day? 
That's the beauty of a computer. Your 
64 is happy to help out, with software 
such as Spanish Vocabulary Quiz. This 
Spanish tutorial will quickly help you 
learn Spanish words, and it'll never com- 
plain about your poor pronunciation or 
your gringo accent. 


Getting Started 

Spanish Vocabulary Quiz is written in 
BASIC with a small machine language 
subroutine. To help avoid typing errors, 
use The Automatic Proofreader when 
entering the BASIC portion; see “Typ- 
ing Aids" elsewhere in this section. 
When you've finished typing, be sure 
to save a copy of the program. 

Enter the machine language routine 
with MLX, our machine language entry 
program; see “Typing Aids" again. 
When MLX prompts, respond with the 
following values. 


Starting address: COO0 
Ending address: COBF 


Save the machine language routine 
with the name SPAN.ML before you ex- 
it MLX. Now format a blank disk and 
place Spanish Vocabulary Quiz on it. 
Use this disk to store the word files you 
create. 


Options 
The options menu contains five choic- 
es: 1. English Words 2. Palabras de Es- 
pafol 3, Load a Word File 4. File Op- 
tions 5. Quit 

The first two options quiz you on Eng- 
lish or Spanish words, respectively. If 
there is no word file in memory, you'll 
automatically be taken to option 3. 

To load a file, enter its name at the 


prompt and press Return. To see a list 
of files on the disk, type a dollar sign 
($) and press Return, When a file has 
been loaded, you'll be given a set of 
simple instructions. Press Return to be- 
gin the quiz. 

You'll be given a word in English (or 
Spanish) and asked to translate it. 
Type your answer at the prompt and 
press Return. If you make a mistake, 
use the Inst/Del key to delete a charac- 
ter or press Shift-Clr/Home to erase 
the whole word and start over. To en- 
ter accented letters such as 4, 6, /, 6, 
or u, hold down the Commodore key 
and type the letter. Likewise, to get the 
tilde (fi) character, hold down the Com- 
modore key and press N. To write an 
upside-down exclamation point (j), 
press the Back Arrow key. Make an up- 
side-down question mark (2) by press- 
ing the slash (/) character. 

You're given three chances to 
guess the word. After three incorrect 
guesses, the program provides the an- 
swer. If you wish to see the answer be- 
fore making three guesses, type a ques- 
tion mark at the prompt and press Re- 
turn. To exit the quiz before all the 
words are asked, enter an asterisk at 
the prompt and press Return, 


Scoring 

After the quiz you'll be given the num- 
ber of words you identified correctly 
and your percentage of correct an- 
swers. Your score depends not only on 
how many words you answered correct- 
ly but also on how many guesses it 
took you. Every incorrect answer will de- 
crease your score. For example, in or- 
der to obtain a perfect score of 100 per- 
cent, you must answer every question 
correctly on the first try. A good way to 
study is by going through the same 
list repeatedly until you can score 100 
percent. 


File Options 
The menu of file options offers several 
choices. 


. Create a Word File 

. Append to a Word File 
. Edit a Word File 

. Return to Main Menu 


PON 


Create a file when starting a new word 
list. First, enter the name of the file. 


Next, enter the English word and then 
the Spanish form. You'll then have a 
chance to make any corrections, enter 
more words, or stop. 

Select Append to add words to the 
current list in memory. It’s a good idea 
to limit your list to 20 words or less. 

Edit a Word File lets you make cor- 
rections to the current word file. The 
first word in the list will be displayed in 
English and Spanish. Press E to edit 
the word. When editing, move the flash- 
ing cursor over the English word, 
make your changes, and then press Re- 
turn. Do the same for the Spanish 
word. To move on to the next word, 
press C to continue. The program will 
display the next word in the list. When 
you've finished editing, press Q to quit 
to the options menu and save any 
changes you've made. 


Spanish Vocabulary Quiz 


XE @ REM COPYRIGHT 1991 - COMP 
UTE PUBLICATIONS INTL LTD 
- ALL RIGHTS RESERVED 
RH 10 REM SPANISH VOCABULARY Q 
UIZ V1.2 
RC 26 REM{8 SPACES}BY CHRIS ST 
oy 
SF 30 : 
EP 40 GOTO 2260:REM SETUP 
SC 100 T=6:PRINT" {HOME} {BLK}"A 
NS"{5 DOWN}":POKE 49153 
152POKE49157,5 
RX 105 PRINT"{6}"AWS; SPC (20-LE 
N(AWS))"{WHT}>";:LN=17: 
GOSUB 200 
GB 116 ON —(WDS="?")-2* (WDS="* 
") GOTO 145,700 
MQ 115 sys 49152 
KH 116 LC=LEN(ANS):IF LEN(WDS 
>LEN(ANS) THEN LC=LEN (W 
DS) 
KH 117 PC=INT (PEEK (49212) *100/ 
LC) -INT (PEEK (49213) /2) 
DP 120 IF PC>7@6 THEN PRINT" 
{DOWN} {WHT}<MUY BIEN! C 
ORRECT !":SC=SC+ABS (T-3 
:C=C+1:GOTO145 
PB 125 T=T+1:IF T=3 THEN 145 
DM 126 IF T=1 THEN POKE 49157, 
245 
XH 127 IF T=2 THEN POKE 49153, 
6:POKE 49157,229 
JX 130 IF PC>36 THEN PRINT" 
{DOWN}{1} ALMOST. TRY A 
GAIN. {DOWN}":GoTO 140 
PE 135 PRINT" {DOWN}{2} SORRY, 
{SPACE}WRONG. TRY AGAIN 
. {DOWN}" z 
XP 140 GOSUB 416:GOTO105 
BX 145 W=W+1:RN$(I)=1:PRINT" 


G-25 


PROGRAMS 


HD 


JM 


GG 


XH 


XF 


CF 


SF 


HD 


PG 


QXx 
G-26 


156 
266 


265 
206 
2168 


215 


217 


226 


225 


236 


235 


246 


245 
306 
315 


320 
325 


336 


335 


346 


345 


466 


465 


416 


586 


505 
519 


{6}{DOWN}THE ANSWER IS 
{SPACE} {WHT}"ANS"{6}.": 
GOSUB 1600:IF W=X THEN 


{SPACE}760 

FL=1:GOTO 468 
WDS="":POKE 198,@:PRINT 
nem; 

GET KES:IF KES$="" THEN 
{SPACE}265 


POKE54296,15:POKE54296, 

8 

IF KES$=CHR$(13) THEN PR 

INT: RETURN 

IF KE$=CHR$(17) OR KE$= 

CHRS(19) OR KES=CHR$(14 

5) THEN 205 

IF KE$=CHR$(147) THEN F 

OR 22=0 TO LEN(WDS) :PRI 

NTCHR$ (26) ;:NEXT:GOTO 2 
86 

IF KES<>CHR$(26) THEN 2 
35 

IF LEN(WD$)=@ THEN 205 

WDS=LEFTS$ (WD$, LEN (WD$) — 
1):PRINT"{2 LEFT}< 
{LEFT}";:GOTO 265 

IF LEN(WD$)>LN THEN 205 

WDS$=WDS+KES: PRINT" 
{LEFT}"KES"<"; 

GOTO 205 

IF X<l THEN 1306 

PRINT" {CLR} {WHT} {DOWN}" 

TAB(11) "QUIZ "QTS" WORD 

3" 

PRINTTAB(11) "{1}{18 T}" 

PRINT" {2 DOWN} {6} 

{2 SPACES}I WILL GIVE Y 

OU A WORD IN {WHT}"QTS" 
{6}," 

PRINT" {DOWN} THEN I WIL 

L ASK YOU TO ENTER THE 
{SPACE}WORD": PRINT" 
{DOWN} IN {WHT}"OTS"{6} 
" 


PRINT" {2 DOWN} (WHT }EXAM 
PLE: ":PRINT" {DOWN} "QTS; 
SPC(13);O0TS 

PRINT"{3}{7 T}"SPC(13)" 
£7 T}":PRINT"{6}"EQS: PR 
INT" {UP} "TAB (26) ;EO$:GO 
SUB 10666 

FOR Z=1 TO X:RN%(Z)=G:N 
EXT:W=@:SC=0:C=@ 

I=INT (X*RND(G))+1:1F RN 
$(I)=1 THEN4GG 

PRINT" {CLR} {DOWN} {YEL}T 
YPE YOUR ANSWER, THEN H 
IT [{WHT}RETURN{YEL}]. 
{2 DOWN}" 
PRINT" {WHT } 


“QTS;SPC (13) 
33£7 T}"SPC 
"£7 T}":RETURN 

"ENGLISH" :OT$="SPAN 


="LA PALABRA" 

GOSUB 300:IF X=@ THEN 2 
196 
AWS=ENS (1) :ANS=SP$(I):G 


COMPUTE 


OSUB 100:IF FL THEN 510 


BB 513 IF F=l THEN 560 
PC 515 GOTO 2108 
HK 6006 OTS$="ENGLISH":QTS="SPAN 
ISH":EOS="THE WORD":EQS 
="LA PALABRA" 
SQ 665 GOSUB 30@:IF X=@ THEN 2 
106 
CX 616 ANS=ENS$(I) :AWS=SP$(I):G 
OSUB 106:IF FL THEN 610 
XK 613 IF F=l THEN 600 
SJ 615 GOTO 2166 
DX 768 FL=G:IF W=@ THEN F=@:RE 
TURN 
GR 763 PRINT" {CLR}{11 DOWN 
{WHT } "TAB (12) "CONGAT)ULA 
TIONS!1" 
JM 705 PRINT TAB(9)"{DOWN} {6}¥ 
OU COMPLETED THE LIST." 
GR 716 FOR Z=1T0192:POKE53280, 
Z:NEX' 1T08: PRINT" 
{DOWN}": NEXT: PRINT" 
{HOME}{9 DOWN}" 
GJ 715 PRINT"{3 SPACES} {YEL}YO 
UR SCORE: {WHT} ";INT(SC 
/(3*W) #166) 5 "3" 
PP 724 PRINT"{DOWN}{3 SPACES} 
we {YEL}YOU GOT {WHT}"C" 
{YEL}CORRECT OUT OF 
{WHT} "W"{YEL}(LEFT}." 
KQ 736 PRINT"{2 DOWN} 
{4 SPACES}{6}WOULD YOU 
{SPACE}LIKE TO TRY THIS 
LIST" 
RK 748 PRINT" {DOWN}{4 SPACES}A 
GAIN ({WHT}Y{6} OR 
{WHT IN{6}) ?{WHT} "; 
CS 756 GET KES:IF KES="" THEN 
{SPACE}756 
JA 755 IF KES="Y" THEN PRINT"Y 
":F=1:RETURN oz 
KK 766 IF KES<>"N" THEN 759 
HM 765 PRINT"N":F=@:RETURN 
RE 1660 PRINTTAB(7)"{2 DOWN} 
{YEL}PRESS [{WHT}RETUR 
N{YEL}] TO CONTINUE."? 
POKE 198,0 
FM 1005 GET KES$:IF KE$<>CHRS$(1 
3) THEN 1665 
DS 1019 RETURN 
XP 1160 POKE 53272,21:POKE 532 
86,14:POKE 53281,6:PRI 
NT"{7}{CLR}":END 
AJ 1266 INPUT#15,ER,ER$,DT,DS: 
FL=6 
JC 1205 IF ER=62 THEN PRINT" 
{CLR} {RED}{9 DOWN}"TAB 
(13) "FILE NOT FOUND.": 
FL=1:RETURN 
FB 1216 IF ER>19 THEN PRINT" 
{RED}{2 DOWN}DISK ERRO 
R #"ER;ER$S"{8 DOWN) ":F 
L=1 
BQ 1215 RETURN 
RP 1368 PRINT"{CLR} {WHT} {DOWN} 
"TAB(12)"LOAD A WORD F 
ILE" 
XJ 1315 PRINTTAB(12)"{3}{16 T} 


BB 


MQ 


Gx 


AB 


cD 


BK 


GJ 


ss 


XA 
RE 


QE 


Ix 
FB 


1326 


1325 


1336 


1335 
1346 


1345 
1356 
1366 


1365 


1396 


1496 


1416 


1660 


1695 


1616 


1615 


1626 


1636 


1635 


1649 


1698 
1766 


1765 


1767 
1719 


PRINT"{2 DOWN} {6} 

{4 SPACES}ENTER NAME O 
F FILE AT THE PROMPT." 
PRINT" {DOWN} {3 SPACES} 
TYPE [{WHT}${6}] TO VI 
EW DIRECTORY." 

PRINT" {DOWN} {3 SPACES} 
PRESS [{WHT}RETURN{6}] 
ALONE TO RETURN TO" 
PRINT" {DOWN} {3 SPACES} 
{WHT}OPTIONS {6}MENU." 

PRINT: PRINT" {2 DOWN} 
{7}NAME OF FILE: {WHT}> 
";:LN=15:GOSUB 206 

IF WD$="" THEN 2100 

IF WDS="$" THEN 14190 
FL$=WD$:0PEN15,8,15:0P 
EN2,;8,2,"0:"+FLS+",S,R 
" 


GOSUB 1260:IF FL=1 THE 
N CLOSE2:CLOSE15:GOSUB 
1686:GOTO 2190 
INPUT#2,X:FOR S=1 TO X 
: INPUT#2,ENS$(S) ,SP$(S) 
:NEXT 
CLOSE2:CLOSE15:GOTO 21 
96 
PRINT"{CLR}{6}PRESS [ 
{WHT }SHIFT{6}] TO PAUS 
E.":SYS 49250:PRINT:GO 
SUB 1696:GOTO 1369 
PRINT" {CLR} {WHT} {DOWN} 
"TAB(11)"WORD FILE OPT 
IONS": PRINTTAB (11) "{3} 
{17 T}" 
PRINTTAB (16) "{DOWN} {6} 
OPTIONS": PRINTTAB (16)" 
2347 TP" 
PRINTTAB (8) "{DOWN} 
{WHT}1. CREATE A FILE" 
: PRINTTAB (8) "{DOWN}2. 
{SPACE}APPEND TO A FIL 
5" 
PRINTTAB (8)"{DOWN}3. E 
DIT A FILE" 
PRINTTAB(8)"{DOWN}4. R 
ETURN TO {WHT}MAIN MEN 
u{2 DOowN}" 
PRINT"{6}{6 SPACES}ENT 
ER YOUR CHOICE{WHT}: 
{4 SPACES}{3 LEFT}"; 
GET KES:IF KES<"1" OR 
{SPACE}KES$>"5" THEN 16 
35 
PRINT KES:ON VAL (KES) 
{SPACE}GOTO 1760,1706, 
1860,2100 
REM CREATE/APPEND A FI 
LE 
KE=VAL(KE$):IF KE=2 AN 
D X=@ THEN 1366 
PRINT" {CLR} {WHT} {DOWN} 
"TAB(12)"MAKE A WORD F 
ILE": PRINTTAB (12) "{3} 
{16 T}" 
IF KE=2 THEN 1726 
PRINT" {DOWN} {4 SPACES} 


ES 


HX 


KX 


JQ 


RE 


RK 


KQ 


BF 


KP 


GP 


1715 


1726 


1725 


1736 


1735 


1746 


1745 


1758 


1755 


1766 
1763 


1765 


1776 
1775 
1786 
1785 
1796 


1791 


1792 


1793 


1794 
1866 


1819 


{6}NAME OF FILE{WHT}:" 
}2LN=15:GOSUB 200:IF W 
DS="" THEN 2199 
FLS$=WDS$+LEFTS$ (NL$,16-L 
EN (WD$) ) :F=F+1:FS$ (F) =F 
L$:X=6:KE=2:GOTO 1705 
X=X+1: PRINT" {HOME} 

{4 DOWN}"TAB (16) "{YEL} 
FILE: {WHT}";FL$ 
PRINTTAB (7) "{DOWN} 
{YEL}NUMBER OF WORDS S 
O FAR{WHT}:";X-1 
PRINT"{6}{2 DOWN} 

{4 SPACES}FIRST, ENTER 


THE {WHT}ENGLISH{6} W’ 


ORD AT" 
PRINT"{3 SPACES}THE PR 
OMPT, THEN ENTER THE 
{WHT} SPANISH." 
PRINT" {DOWN}{8} ENGLIS 
H WORD: {WHT}";:LN=17: 
GOSUB 200:ENS(X)=WD$:I 
F WOS="" THEN 1763 
PRINT"{2 DOWN}{8} SPAN 
ISH WORD: {WHT}";:LN=1 
7:GOSUB 260:SP$(X)=WD$ 
:IF WDS="" THEN 1763 
PRINT"{2 DOWN} {YEL} IS 
THIS CORRECT ({WHT}Y 
{YEL} OR {WHT}N{YEL}) 
{WHT} "; 
GET KE$: 
N PRINT"N 


{? 


F KES="N" THE 
GOTO 1705 
THEN 1755 
THEN PRINT" 
{BLK}":X=X-1 
PRINT"Y": PRINT" {RIGHT } 
{YEL}{DOWN}ENTER ANOTH 
ER WORD ({WHT}Y{YEL} 0 
R {WHT}N{YEL})?{WHT} " 


7 

GET KES$:IF KES="Y" THE 
N PRINT"Y":GOTO 1765 
IF KE$<>"N" THEN 1776 
PRINT"N":OPEN15,8,15:1 
F KE=2 THEN PRINT#15," 
SG:"+FL$:GOSUB 1266 

IF FL THEN CLOSE 15:GO 
SUB 1666:GOTO 2160 
OPEN2,8,2,"6:"+FLS+",S 
;W":GOSUB 1260:IF FLT 
HEN CLOSE 2:GOTO 1785 
PRINT#2,X:FOR S=l TO X 
: PRINT#2,ENS(S) : PRINT# 
2,SP$(S):NEXT:GOSUB 12 
CI) 


IF FL THEN CLOSE 2:GOT 
oO 1785 

PRINT" {CLR} {63{9 DOWN} 
"TAB(14) "FILE SAVED. 
{2 DOWN}" 
CLOSE2:CLOSE15:GOSUB1O 
88:GOTO 2190 

IF X=@ THEN GOSUB 300: 
GOTO 2108 

S=1:FL=1: PRINT" {CLR} 
{WHT } {DOWN} "TAB (15) "ED 
IT A FILE" = 


Qs 


MS 


GD 


MK 


QH 


ER 


RF 


BP 


1815 
1826 


1825 
1836 


1835 


1849 


1845 


1856 


1855 


1866 


1865 


1876 


1875 


1886 
1885 


1896 


1891 


1892 


1893 
2166 


2195 


2116 


2115 


2126 


2125 


PRINTTAB(15)"¢3}{11 T} 


PRINT" {DOWN} {YEL} FILE 
: {WHT}";FLS$;SPC(17-LE 
N(FL$))"{YEL}# OF WORD 
S: {WHT }";X 
PRINT" {DOWN} {33440 Y}" 
PRINT" {HOME}{8 DOWN} 
{6} ON WORD: {WHT} 
{4 SPACES}{4 LEFT}";s 
PRINT"{2 DOWN} {8} 
{2 SPACES}ENGLISH WORD 
: {WHT}";ENS$(S) ;LEFTS ( 
SC$,22-LEN(ENS$(S))):PR 
INT 
PRINT" {8}{2 SPACES}SPA 
NISH WORD: {WHT}";SP$( 
S) ; LEFTS (SC$,22-LEN (SP 
$(S))) PRINT 
PRINT"{2 DOWN} {YEL}[ 
{WHT}E{YEL}] TO {WHT}E 
DIT{YEL} WORDS" 
PRINT" {DOWN} [{WHT}C 
{YEL}] TO {WHT}CONTINU 
E{YEL} LISTING" 
PRINT" {DOWN} [{WHT}Q 
{YEL}] TO {WHT}QUIT 
{YEL} TO {WHT}OPTIONS 
{YEL} MENU{DOWN}" 
GET KES:IF KES="" THEN 
1866 
ON —(KE$="E")—2* (KES=" 
C") -3* (KE$="Q") GOTO189 
6,1870,1880:GOTO1860 
S=S+1:IF S < (X+1) THE 
N183¢ 
S=1:GOTO1830 
IF FL THEN 2100 
KE=2: PRINT" {BLK}":GOTO 
1786 
PRINT" {HOME}{11 DOWN}" 
TAB (16) ;"{WHT}"; :POKE1 
9,65: INPUTTES: POKE19,@ 
:PRINT 
PRINT" {DOWN} "TAB (16) ;" 
{WHT }"; :POKE19,65:INPU 
TTS$:POKE19,@: PRINT 
IF TES<>ENS(S) OR TSS< 
>SPS$(S) THEN ENS(S)=TE 
$:SP$(S)=TS$:FL=6 
GOTO 1836 
PRINT" {CLR} {DOWN} "TAB ( 
9)"{WHT}SPANISH VOCABU 
LARY QUIZ" 
PRINTTAB(9) "{3}{23 T}" 
PRINTTAB(16) "{DOWN} {6} 
OPTIONS": PRINTTAB(16)" 
{BLU}{7 T}{DOWN}" 
PRINTTAB(8)"{WHT}1. EN 
GLISH WORDS": PRINTTAB ( 
8)"{DOWN}2. PALABRAS D 
E ESPA{N}OL" 
PRINTTAB(8)"{DOWN}3. L 
OAD A WORD FILE": PRINT 
TAB(8)"{DOWN}4. FILE O 
PTIONS" 
PRINTTAB(8)"{DOWN}5. Q 
uit" = 


FS 


FC 


XX 


XX 


QQ 


XR 


ish} 
FX 


BG 


EM 


JM 
Gc 
XH 


DC 


cD 


SF 


FM 


cD 
Jc 
PE 
EA 
KX 
BD 
KA 
MF 
QK 
KP 
GA 
EJ 


SG 


21368 


2135 


2146 


2288 
2202 


2265 


2219 
2215 


2216 


2226 


2236 
2246 
2245 
2255 


2265 


2276 


2275 


2280 
2285 
2435 
2446 
2445 
2456 
2455 
2469 
2465 
2476 
2475 
2486 


2485 


PRINT"{2 DOWN} {6} 

{4 SPACES}ENTER YOUR C 
HOICE{WHT}: "; 

GET KES:IF KES$<"1" OR 
{SPACE}KE$>"5" THEN 21 
35 

PRINT KE$:ON VAL (KES) 
{SPACE}GOTO 590,600,13 
6G,1666,1108 
POKE53286,@:POKE53281, 
@ 

IF LV=1 THEN POKE 56,5 
6:CLR:GOTO 2245 
PRINTCHRS (14) "{6}{CLR} 
"TAB (9)"{2 DOWN} {WHT}S 
PANISH VOCABULARY QUIZ 
" 


PRINTTAB (9) "{3}{23 T}" 
PRINTTAB (12) "{DOWN} {6} 
COPYRIGHT 1991" 
PRINTTAB(4)"{2 DOWN} 
{WHT}COMPUTE PUBLICATI 
ONS INTL LTD{2 DOWN}" 
PRINTTAB (1G) "{YEL}ALL 
{SPACE}RIGHTS RESERVED 
" 


PRINTTAB(13)"{3 DOWN} 
{WHT}PLEASE WAIT..." 
IF LV=@ THEN LV=1:LOAD 

"SPAN.ML",8,1 

DIM ENS (38) ,SP$(30) ,RN 

% (30) ,F$ (128) 

POKE 56334, PEEK (56334) 
AND 254:POKE 1,PEEK(1 
) AND 251:SyS 49217 
POKE 1,PEEK(1) OR 4:PO 
KE 56334, PEEK (56334) O 
R1 

READ A:IF A=-1 THEN228 
(] 

FOR I=8 TO 7:READ B:PO 
KE 14336+A*8+1I,B:NEXT: 

GOTO2278 

POKE 53272, (PEEK (53272 
)AND 246)OR 14 
SC$="{21 SPACES}":GOTO 
2169 

DATA 30,36,0,102,1062,1 
62,102,62,0 

DATA 31,0,24,8,0,24,24 
724,24 

DATA 47,0,24,0,24,48,9 
6,162,60 

DATA 98,6,24,0,56,24,2 

4,66,0 

DATA 166,54,72,124,102 

,102,162,162,0 

DATA 112,6,8,60,6,62,1 

02,62,0 

DATA 113,6,8,60,102,12 

6,96,608,0 

DATA 120,6,8,102,162,1 

02,162,62,8 

DATA 121,6,8,69,102,16 

2,102,60,0 

DATA 158,219,255,153,1 

53,153,153,193,255 

DATA 159,255,231,255,2 


G-27 


PROGRAMS 


55,231,231,231,231 
DATA 175,255,231,255,2 
31,207,159,153,195 
DATA 226,249,231,255,1 
99,231,231,195,255 
DATA 234,2G1,183,131,1 
53,153,153,153,255 
DATA 240,249,247,195,2 
49,193,153,193,255 
DATA 241,249,247,195,1 
53,129,159,195,255 
DATA 248,249,247,153,1 
53,153,153,193,255 
DATA 249,249,247,195,1 
53,153,153,195,255 
DATA -1 


SP 2496 
SA 2495 
QE 2568 
SB 2505 
HJ 2510 
FG 2515 


BP 2520 


GJ 2525 


SPAN.ML 


CGGG:A9 65 85 FC AQ BS 85 FB 8G 
COG8:AG BB 8C 3C CH BC 3D CH A2 
CG@16:8C 3E CG AE 3E C@ Bl FB BE 
CG18:C9 3C DG Gl 68 DD BH G4 36 
C62G:FG 186 CA DD 66 64 FO 07 4E 
CG@28:E8 E8 DD GG G4 DB G6 EE 72 
C036:3D C® EE 3C CO EE 3E C@ 21 
C638:C8 4C 13 CO 6B BB BG EA 8A 
CO4G:EA AS 6G 85 FB 85 FD AQ 95 
CG48:D8 85 FC AO 38 85 FE A2 4A 
C656:68 AG 60 Bl FB 91 FD 88 C3 
CG58:D@ F9 E6 FC E6 FE CA DO G7 
CO6G:FG 60 AD Gl A2 GB AG BG 2E 
C668:206 BA FF A9 62 A2 BC AG F7 
C67G:CG 26 BD FF 26 CO FF A2 BB 
CG78:61 26 C6 FF 26 CF FF 20 BB 
CO8G:CF FF 20 CF FF 85 FB 26 19 
CO688:CF FF 85 FB FG 25 A9 BD CE 
C990:26 D2 FF AD 8D @2 29 @1 79 
C998:D6 F9 26 CF FF AA 26 CF BC 
CGAG:FF 28 CD BD A9 26 20 D2 AG 
COA8:FF 26 CF FF FO D4 26 D2 1A 
COBG:FF D@ F6 AY G1 26 C3 FF EF 
COB8:26 CC FF 68 24 36 G0 GB 65 


Christopher M. Stoy lives in 
Ebensburg, Pennsylvania. o 


SPEEDSWAP 


By Larry Hagney 

Most of us don't use SpeedScript to 
write the Great American Novel. Usually 
we confine our efforts to smaller endeav- 
ors such as letters, reports, term pa- 
pers, program documentation, and 
such. As a result much of the text mem- 
ory available to SpeedScript remains 
empty. 

Suppose you're using SpeedScriptto 
write a term paper. In the midst of your 
efforts, you remember a couple of par- 
agraphs in a document that you wrote 
a couple of months ago and decide 
they would fit perfectly with this paper. 


G-28 COMPUTE 


To incorporate that material takes more 
than a little effort. First, you save your 
paper to disk, load in the old document, 
copy the relevant section into the text 
buffer, erase the old document, load in 
the term paper, and then finally insert 
the saved text in the appropriate area 
of your paper. 

Well, those days are gone forever. 
With SpeedSwap patched into your 
copy of SpeedScript3.2 for the 64, two 
text documents can coexist in memory. 
The problem mentioned above is now 
simple to solve. Just move to your alter- 
nate screen and load the old document. 
Now both documents are independent- 
ly accessible. Material can be copied 
from one document to the other, or one 
text area can be your workscreen while 
the second serves as a storage area for 
various reference materials. 


Getting Started 

SpeedSwap is a BASIC program 
which contains a short (227 bytes) ma- 
chine language routine. To avoid typ- 
ing errors, enter the program using The 
Automatic Proofreader; see “Typing 
Aids” elsewhere in this section. When 
you've finished typing, save a copy of 
the program to a disk containing 
SpeedScript. Your copy of 
SpeedScript must be saved with the file- 
name SPEEDSCRIPT because 
SpeedSwap automatically loads and 
runs that filename. 

When you run SpeedSwap, it lets 
you allocate memory for each of two 
text areas, identified onscreen as area 
0 and area 1. Default sizes of 21,504 
and 21,760 bytes are displayed in 
white text. Pressing CRSR-down de- 
creases the size of text area O in 256- 
byte chunks, while increasing text area 
1 by a similar amount. CRSR-up per- 
forms the opposite function. Note that 
the total number of bytes of both text ar- 
eas is always 43,264. This is 256 
bytes less than SpeedScript normally 
makes available because SpeedSwap 
allocates a 256-byte safety zone be- 
tween each text area. 

If you're not sure how many bytes to 
allocate for a file that's already on 
disk, corresponding disk block sizes 
are also displayed. Once the text 
areas are adjusted for your needs, 
press Return to boot SpeedScript. 
SpeedSwap sets up its machine lan- 


guage routine which loads 
SpeedScript, patches itself in, and 
then runs the word processor. 


Only One Command 

With SpeedSwap patched into 
SpeedScript, you have complete, inde- 
pendent control over two areas of text 
memory. Only one command is need- 
ed to switch between the two. Press 
the Ctrl key and Commodore logo key 
simultaneously to toggle between text 
area O and text area 1. 

When SpeedScript's screen first ap- 
pears, you'll see a 0 in the command 
line, indicating that you are now work- 
ing in text area 0. Press the Ctrl key 
and the = key simultaneously to see 
the amount of memory allotted to this 
area. 

Press Ctrl-Commodore to access 
area 1, indicated by a 1 in the com- 
mand line. Area 1 provides 43,264 
bytes minus the number of bytes in 
area O for text storage. 

Each text area is completely inde- 
pendent of the other. Text can be print- 
ed from, loaded into, or saved from 
one area, without disturbing or being af- 
fected by the other. You can erase all 
text in one area while text in the other 
area remains untouched. Each area al- 
so supports its own text and back- 
ground colors. 

In short, every SpeedScript com- 
mand behaves as though the active 
text area is the only text area. One no- 
table exception is SpeedScript’s text 
buffer; text from one area can be cop- 
ied into the buffer and inserted into the 
other text area. Similarly, HUNT and RE- 
PLACE phrases are also portable to 
each area. One handy SpeedSwap fea- 
ture is cursor positioning. When you re- 
turn to a text area, you'll find the cur- 
sor in the same position as you left it. 
This is convenient when using one 
text area for viewing reference materi- 
als and the other for writing. 


Keep in Mind 

The changes SpeedSwap makes to 
SpeedScript are not permanent, so 
load and run SpeedSwap whenever 
you want to use it. There are a few cau- 
tions that you should bear in mind, 
however. Do not attempt to load a docu- 
ment into a text area for which you ha- 
ven't allocated enough space. For in- 


stance, if area O has 21,504 bytes al- 
located and you attempt to load a 100- 
block document, text area 0 will be 
filled, but the rest of the document will 
spill over into area 1. The text in area 
1, however, cannot be accessed. You 
must erase all text in area 1 before you 
can use that screen. 

This could be avoided by allocating 
25,600 bytes to area 0 prior to loading 
the 100-block document. Also, if you at- 
tempt to load a file too large for area 1, 
SpeedSwap’s machine language will 


be overwritten by the text, and 
SpeedScript will crash 
Also, if you plan on_ using 


SpeedSearch (May 1987) to search 
any SpeedSwap-generated files, be 
aware that documents saved from ar- 
ea 0 will have a normal load address of 
9472. Documents saved from area 1, 
however, will have a load address of X 
* 256 where X = (number of area 1 
bytes / 256) + 37. However, the load ad- 
dress is irrelevant to SpeedScript, any 
SpeedScript enhancement program, or 
any other program designed to proc- 
ess SpeedScript text files. 

If you plan to exit SoeedScript and 
then return from BASIC, be sure that 
text area 0 is active when you quit. Oth- 
erwise, text could be damaged. 


SPEEDSWAP 


DB 10 REM COPYRIGHT 1991 COMPU 
TE PUBLICATIONS INTL LTD 
- ALL RIGHTS RESERVED 
POKE868 , 234: PRINT" {CLR} 
{N} {H}¢8}"; :DIMX,Q$,A,B, 
C,S,E,E$:X=121:E$="DATA 
{SHIFT-SPACE}ERROR IN LI 

NES" 
S=828:E=934:GOSUB186:1FC 
<>11409THENPRINTES196"—" 
250:STOP 
SYSS:PRINT"SPEEDSCRIPT 3 
.2 SPEEDSWAP": PRINT" {4} 
{DOWN}COPYRIGHT 1991" 
PRINT"COMPUTE PUBLICATIO 
NS INTL LTD":PRINT"ALL R 
IGHTS RESERVED{DOWN}" 
S=53000:E=53226:GOSUB186 
: IFC<>25771THENPRINTES$26 
G"-"399:SYS9G6:STOP 
PRINT"PRESS CRSR UP/DOWN 
TO SELECT SIZE 
{7 SPACES}(IN BYTES) OF 
{SPACE}EACH TEXT AREA." 
PRINT"PRESS RETURN TO LO 
AD SPEEDSCRIPT." 
PRINT"PRESS CTRL/C= FROM 


GP 26 


AQ 36 


XC 46 


MA 58 


BH 66 


GF 78 


CM 86 


XG 96 


EQ 


MS 


DF 


PK 


SP 


BP 


GB 


Qc 


GD 


AR 


DM 


MG 


PG 


BM 


BG 


SQ 
BX 


MA 


EB 


MF 


JE 


CF 


DB 


196 


119 


126 


136 


146 


159 


169 


176 


186 


198 


208 


216 


228 


238 


249 


250 
268 


276 


280 


296 


360 


310 


326 


WITHIN SPEEDSCRIPT 


{3 SPACES}TO SWAP TEXT A 
REAS. {DOWN}" 


FORA=.TO1:PRINT"TEXT AR 
EA"ASPC(8) "DISK BLOCKS" 
:NEXT 

PRINT"TOTAL BYTES 43264 
{3 SPACES}TOTAL BLOCKS 
{SPACE}169{WHT} {UP}" 
PRINT"{2 UP}"SPC(11-(Xx< 
77) )X*256-9472SPC (13-(X 
<137)—(X<47))" "X-37 
PRINTSPC(11-(X>166)) 529 
92-(X+1) *256SPC (13-(X>1 
66)-(X>196))" "206-x 
GETQ$:ON-(Q$="{DOWN}"OR 
QS="{UP}")GOTO176:IFQS< 
>CHRS (13) THEN140 
POKE53041,X:X=X+1: POKES 
3209,X:POKE53218,X:POKE 
53224,X:POKE53226,X 
SYS906: PRINT" {CLR} {8}LO 
ADING SPEEDSCRIPT...":P 
OKE808,237:SYSS:END 
X=X+ (QS="{DOWN}") -(Q 
{UP}") :X=X-162* ( (X=40) - 
(X=203)) :POKE646,-(X=12 
1) :GOTO120 

C=.:FORA=S TOE:READB: PO 
KEA,B:C=C+B: NEXT: RETURN 
DATA126,169,0,141,14,22 
6,169,27,141,17,208,169 
791,141,20,3,169 
DATA3,141,21,3,169,1,14 
1,26,268,141,18, 208,88, 
96,169,58,172 
DATA135,3,205,18,208, 20 
8,8,169,1,172,136,3,140 
7 32,208,146,33 
DATA2@8,141,18,208,201, 
1,240,8,169,1,141,25, 20 
8,76,188,254,169 
DATA1,141,25,208,76,49, 
234,0,12,0,126,169,0,14 
1,26,208,141 
DATA32,208,141,33,208,1 
69,49,141,26,3,169,234, 
141,21,3,169,1 
DATA141,14,220,88,96 
DATA169,5,162,8,168, 32, 
186,255,169,11,162,205, 
160,207,32,189,255 
DATA169,@,133,10,141,8, 
32,32,213,255,169,76,16 
2,267,141,134,18 
DATA142,135,10,142,11,3 
2,169,121,141,177,9,169 
137,141,9,32,173 
DATA29,13,141,235,267,1 
73,44,13,141,236,207,32 
155,9,76,13,8 
DATA162,49,142,38,216,1 
73,11,32,261,2067,246,1, 
262,142,38,4,173 
DATA141,2,261,6, 208,103 
,165,2,168,0,145,57,132 
7162,165,162,41 
DATA16, 24, 250,162,3,18 


9,12,32,157,220, 267,202 
116,247,162,3,189 
DATA19,32,157,227,207,2 
62,16,247,160,16,185,8, 
32,190,216,207,153 
DATA216, 267,138,153,8,3 
2,136,16,246,162,1,181, 
57,188, 233,207,157 
DATA233,207,152,149,57, 
* 2062,16,242,173,29,13,17 
2,235,207,148,29,13 
DATA141,235,207,173,44, 
13,172,236,207,146,44,1 
3,141,236, 207,160,0 
DATA177,57,133,2,32,246 
197 76,228,255,83,80,69, 
69,68,83,67 
DATA82,73,80,84,0,122,0 
1207,8,8,0,0,40,0,122,0 


BE 336 


MC 349 


EC 356 


RB 368 


RS 376 


MH 3896 


, 
DK 399 DATAG,8,6,122,0,122 


Larry Hagney lives in Las Cruces, New 
Mexico. a 


CREDIT CONTROL 


By George R. Reid 
When the temptation to use a conven- 
ient credit card becomes too great to 
ignore, a program such as Credit Con- 
trol can be a welcome financial guide 
and advisor. Successful credit card 
management depends on three requi- 
sites: a careful budget, accurate ac- 
counts, and financial discipline. 
Credit Control is a simple program for 
the 64 that can help you plan your ex- 
penditures and alert you against over- 
spending. It also provides some gener- 
al fiscal advice. 


Getting Started 

Credit Control is written entirely in BA- 
SIC. To help avoid typing errors, use 
The Automatic Proofreader; see “Typ- 
ing Aids” elsewhere in this section. Be 
sure to save a copy of the program 
when you've finished typing it in. 


Taking Charge 
Have your monthly credit card state- 
ment and any late purchase receipts 
on hand when you run Credit Control. 
When you first use the program or if 
your financial situation later changes, 
move the highlight cursor to the Statis- 
tics menu option and press Return. A 
series of prompts will guide you. Sim- 
ply enter your card’s finance charge 
G-29 


PROGRAMS 


rate, your monthly payment date, your 
self-imposed monthly credit purchase 
limits, and your credit limit. After you 
make these entries, you'll return to the 
main menu. , 

To record your credit transactions, se- 
lect the Data Entry option. You'll be 
asked to enter the month and day of 
each transaction and the seller's 
name and description of items pur- 
chased. (Keep the name and descrip- 
tion to 13 characters or less.) For your 
first entry, enter the date and balance 
due from your last monthly credit state- 
ment. Then enter any credit purchases 
or payments made since the statement 
date. 

At the end of each transaction, you'll 
be given several options. You may en- 
ter another transaction, make changes 
to previous entries, return to the main 
menu, or display your current entries. 
After you've entered all of your credit 
card transactions, return to the menu 
and select the Storage option to save 
your data. You may want to save the da- 
ta with a name that is similar to your 
credit card's. Use any valid filename 
up to 12 characters in length. Credit 
Control appends a prefix of CDF to 
each filename for easy identification, 
but omit these letters when loading the 
data back into your program. 


Taking Control 

After you charge an item or make a pay- 
ment on your account, toad your file 
from the Storage option, select Data En- 
try, and then enter the transaction. If 
you make a payment, place a minus 
sign immediately before any payment 
amounts or returns. These will appear 
as subtractions from the account bal- 
ance. Save the file when data entry is 
complete. Credit Control takes care of 
everything else. 

On the menu screen you'll be in- 
formed of your credit card balance. 
You'll also receive some friendly advice 
on credit management, if necessary. A 
listing of transactions and balances 
can be made at any time. Error correc- 
tions can be made easily for the last 
two entries. Earlier errors can be recti- 
fied by making a new entry that adds 
or subtracts the proper amount to cor- 
rect the balance. 

Each credit card's account can be 
maintained in a separate file. However, 


G-30 COMPUTE 


if you begin the system with a realistic 
self-imposed monthly spending limit, 
Credit Contro/ will advise you when to 
get rid of those extra cards. Also, be 
aware that you don't have to accept 
the card company's suggested month- 
ly payment amount. Credit Control will 
advise you on payment size and other 
factors, too. 

Keep all your credit slips handy in 
an envelope or simple file. Then get in- 
to the habit of regularly entering them. 
Follow the program's financial advice, 
enjoy Credit Control, and don't abuse 
your credit with overuse. 


CREDIT CONTROL 


XE @ REM COPYRIGHT 1991 - COMP 
UTE PUBLICATIONS INTL LTD 
- ALL RIGHTS RESERVED 


EX 16 REM CREDIT CONTROL -BY G 
- REID. CC 
KC 20 MX=61:X=@:L=1:0$="16.5": 
PS$="10TH OF MONTH" :M=16: 
CL=1666 
AK 38 DIM D$(MX, 4) 
AA 40 PRINT"{CLR}" 
AJ 5@ FORXX=1T05: PRINT" {DOWN}" 
:NEXT: GOSUB986 
MR 66 PRINT"{HOME}{2 DOWN}";TA 
B(13)"{GRN}CREDIT 
{ SHIFT-SPACE) CONTROL{7}" 
CX; 70 PRINTTAB (13) "**Aeeeeenee 
wee 
CP 86 PRINT CHRS$(14) 
BP 96 SYS="{RVS}{CYN}":SZ$=" 
{OFF}{7}" 
GE 166 N$(1)="DATA ENTRY":NS(2 
ISPLAY" 
AS 110 N$(3)="STORAGE":NS$(4)=" 
STATISTICS" 
SM 126 NS$(5)="EXIT" 
ER 130 FOR C=1T05:PRINTTAB (13) 
NS(C) NEXT 
GK 146 PRINT"{6 UP}":C=1:PRINT 
TAB (13) SY$NS(1)S2$ 
XD 150 GETGS$: IFGS=""THEN150 
KR 160 IFGS=CHRS (13) THEN200 
CE 176 IFGS="{DOWN}"THEN PRINT 
"{UP}"; TAB (13)NS$(C) sC=C 
+1:PRINTTAB (13) SYSNS$(C) 
SZ$ 
MK 180 IFC=6THENPRINT"{UP}";:G 
OTO146 
DX 196 GOTO15¢ 
AE 266 ON C GOTO336,576,730,21 
86,1249 
AQ 216 PRINT"{CLR}{2 DOWN}STAT 
ISTICAL DATA ENTRY":PRI 
NT 
QE 220 PRINT"ENTER YOUR NEW:-" 
XS 236 PRINT" {DOWN}ANNUAL FINA 
NCE CHARGE RATE" 
GA 240 PRINT"CURRENT IS--";0$: 


FS 
AX 
cP 
AQ 
FA 
sJ 
FF 


DH 
GQ 


DE 


HQ 


BD 


QE 


KA 


256 
266 
276 
2868 
296 
366 
316 


3208 
336 


346 


358 


368 


376 


380 


396 


499 
416 
426 


436 


449 
456 
466 
476 
486 
499 
566 


518 
528 


536 
546 


558 


568 


INPUT O$:IFVAL(0$) <1THE 

N21 

PRINT" {DOWN}MONTHLY PAY 
MENT DATE" 
PRINT"CURRENT IS-~";P$: 
INPUT P$ 

PRINT" {DOWN}BUDGETED MA 
XIMUM MONTHLY CREDIT" 
PRINT"PURCHASES AMOUNT 
{SPACE}S$" 

PRINT"CURRENT IS--"jMz1 
NPUT Mz: IFM<1LTHEN27@ 
PRINT" {DOWN}ASSIGNED CR 
EDIT LIMIT" 
PRINT"CURRENT IS--";CL: 
INPUT CL 

GOTO4G 
X=X+1:Y=@:1$="--":1IFXOM 
X-1THENPRINT" {CLR} 
{DOWN}FULL FILE":X=L:GO 

T0436 

PRINT" {CLR}{2 DOWN}ENTE 
R MONTH & DAY OF PURCHA 
SE":GOSUB420 

PRINT" {CLR}{2 DOWN}ENTE 
R SELLER'S NAME/DESCRIP 
TION" :GOSUB420 

PRINT" {CLR} {2 DOWN}ENTE 
R AMOUNT (CHARGED OR PA 
Ip) $" 

PRINT" (PAYMENT MUST BE 
{SPACE}MINUS E.G. 

{2 SPACES}-56) {DOWN} ":L 
=X:GOSUB420 

B2=B2+VAL (D$(X,3)) :B2=I 
NT (B2*100+.5)/100:D$ (Xx, 
4) =STRS (B2) 

IFVAL (D$ (X,3) ) <OTHENB4= 
B3:B3=B2 

IFX=LTHEN430 
X=X+1:GOTO526 
INPUTI$:Y=¥+1:D$ (X,Y) =I 
$:1$="--":RETURN 

PRINT" {DOWN} E=ENTER: C 
=CHANGES: M=MENU: D=DIS 
PLAY" 

GET N$:1FNS=""THEN446 
IF NS$="E"THEN336 

IF N$="C"THENSGG 

IF N$="M"THEN4G 

IF N$="D"THENS7@ 
GoTO446 
PRINT" {CLR} {DOWN}HIT RE 

TURN AFTER CHANGES OR T 
0 BY-PASS{2 SPACES}AN E 
NTRY" 
X=X-1:1IFX<1THENX=1 
PRINT" {DOWN}ENTER NEW D 
ATA AT CURSOR:-" 

B2=VAL (D$(X-1,4)) : PRINT 
PRINT" #";X;TAB (5) "DATE: 
{3 SPACES}";D$(X,1);:IN 
PUT D$(X,1) 

PRINTTAB(5) "SELLER: ";L 

EFTS$ (D$(X,2),13);:INPUT 
DS (X,2) 

PRINTTAB(5) "AMOUNT: ";D 
$(X,3);2INPUT D$(X,3):P 


HJ 


AA 


578 
586 


598 


609 
616 


620 
636 
646 


656 


666 
678 


680 
699 
768 
716 
726 
736 


746 


758 
768 
7768 
786 


796 
806 
819 


820 
836 


846 
850 
866 


870 
880 
896 


966 


916 
926 
936 
949 


959 
966 
976 


989 
996 


RINT: GOTO38G 
G=1:C2=18:C1=C2 

PRINT" {CLR} {DOWN}";C$:P 
RINT" NO DATE{2 SPACES} 
SELLER/DETAIL{2 SPACES} 
AMOUNT BALANCE" 

PRINT" =- ~~ 


FOR C=GTO L 

PRINTC;TAB (4) LEFTS$ (D$(C 
11) ,6);TAB (16) LEFTS (D$ ( 
C,2),13); 

PRINTTAB (23) ; :F$=D$(C,3 


) 
GOSUB640:F$=D$(C,4) :GOS 
UB64G: PRINT: GOTO680 
FS="{5 SPACES}"+FS:FTS= 
RIGHTS (F$,3) : IFLEFT$ (ET 
$,1)="."THEN676 

IFMIDS (ET$,2,1)=". "THEN 
FS=FS$+"6":GOT0670 
FS=FS+".66" 
PRINTRIGHTS (F$,8) ; :RETU 
RN 

IF C<CLTHEN726 

PRINT" {DOWN} RETURN" 

GET PAS: IFPAS=""THEN70G 
C1=C1+C2 

NEXT: PRINT: GOT043G 
PRINT" {CLR}{2 DOWN}":IN 
PUT"ENTER FILE-NAME";CS$ 
PRINT” L=LOAD: 

{2 SPACES}S=SAVE" 

GET X$:IFXS$=""THEN756 
IFX$="L"THEN9OG 
IFX$<>"S"THEN75@ 


7 
GETX$:IFX$ 
IFX$<>"Y"THEN4G 

OPEN 1,8,2,"@0:CDF"+CS$+ 
"S,0" 

QS=CHRS (13) 
PRINT#1,PSQSO$QSM,QSL,Q 
SCL 

C=1:Y=1 

IF C>LTHEN89@ 
AS=D$(C,Y) :PRINT#1,AS$:Y 
=Y+1 

IF Y>4THEN Y=1:C=C+1 
GOTO85a 

CLOSE 1:PRINT"{CLR} 
{DOWN}SAVED "C$:GOTO5¢ 
OPEN 1,8,2,"6:CDF"+CS+" 
Tork 

INPUT# 1,P$,0$,M,L,CL 
C=1:Y=1 

IF C>LTHEN97@ 
INPUT#1,AS$:D$(C,¥)=A$:¥ 
=Y+1 

IF Y4THEN Y=1:C=C+1 
GOTO93G 

CLOSE 1:X=L:B2=VAL(D$(C 
-1,4)) :GOT0576 
U=VAL (D$ (X,4)) 

UM=INT ( (U-M) *160+.5)/16 


6 

1060 PRINT: PRINT" {YEL}SELEC 
T{7} WITH CURSOR AND R 
ETURN" 


XG 


KQ 1616 


PRINT" {GRN}YOUR CURREN 

T BALANCE IS $"; 

IFU>MTHENPRINT"{3}"U" 
£7}":GOTO1656 

PRINTU: IFU=<@THENPRINT 

" CONGRATULATIONS !":GO 

701230 

IF (CL-U)<CL*.2 THEN PR 

INT" YOUR CREDIT LIMIT 
Is $";CL 

IFVAL (D$(X,3)) <@THEN1G 

90 

PRINT" TO AVOID FINANC 

E CHARGE AT ";0$;"% AP 

R,™ 

PRINT" PLEASE PAY BY " 
7PS; "479" 

IFU=<M THEN1230 
PRINT"{1}BALANCE EXCEE 
DS $";STR$(M) ;"-BUDGET 
BY";UM 

R=VAL (0S) /12/166:1F (U/ 
M*R) >.99999THEN1210 
N=LOG (1/(1-(U/M*R))) /L 

0G (1+R) 

PRINT" IF NO FURTHER P 
URCHASES, IT TAKES" 
PRINTINT (N*10+.5)/16;" 
MONTHS TO PAY OFF.{7}" 
IF N<1.15THEN1230 

IF VAL (D$(X,3))<(.25*M 
)THEN IF U<B4THENPRINT 
" GOOD TREND...BUT" 

IF N>2 THEN1220 
PRINT"{3}INCREASE YOUR 
BUDGET TO $"; INT (M*N) 


Gc 1626 


BR 1636 


BC 10646 


PH 1656 


AD 1666 


HD 1676 


JA 1686 


FA 
DD 


1696 
1166 


RF 11190 


MF 1126 
QE 1136 
HE 1149 


1156 
1166 


KD 
JK 


1176 
1186 


FQ 
kQ 


7 
IF N<1.5THEN1236 
PRINT" OR":GOTO1226 
PRINT"{3} CANNOT BE RE 
PAID.{2 SPACES}BUDGET 
{SPACE}OF $";M;"IS 

{4 SPACES}VERY LOW. 

{2+ SPACES}REPEAT!" 
PRINT" { YEL}HIDE 

{ SHIFT-SPACE} YOUR 
{SHIFT-SPACE}CARD AWAY 
1{7>" 

RETURN 

PRINT"{2 DOWN}DID YOU 
{SPACE}SAVE YOUR DATA? 
{3 SPACES}¥/N" 
GETSS$:IF SS$=""THEN125@ 
IF S$="Y"THEN PRINT" 
{CLR}":END 

1278 GoTO4g 


1196 
1266 
1216 


PQ 
BA 
KD 


AK 1226 


1236 
1246 


cQ 
AG 


JG 
MA 


1256 
1266 


HP 


George R. Reid is a professor of busi- 
ness. He lives in Savannah, Georgia, 
and has excellent credit. a 


PLOTTER 


By Daniel Lightner 

Have you ever designed a screen on 
the 64 that you would like to use in a 
program that you're writing? Poking 
those character values into the proper 
screen memory locations is a fast and 
efficient way to do it, but determining 
those poke values is another story. Plot- 
ter is just the utility to help you deter- 
mine those values. 


Typing It In 

Plotter is written entirely in machine lan- 
guage. To enter it, use MLX, our ma- 
chine language entry program; see 
“Typing Aids” elsewhere in this sec- 
tion. When MLX prompts, respond 
with the following values. 


Starting address: C000 
Ending address: C207 


Be sure to save a copy of the program 
before you exit MLX. 


Putting It to Work 

To use the program, enter LOAD"PLOT- 
TER’,8,1 and then press Return. 
When it has finished loading, don't run 
it. Instead, type NEW, press Return, 
and then enter SYS49152. If all has 
gone well, the program will announce 
its presence. 

To see how Plotter works, place the 
cursor on any character, anywhere on 
the screen. Press f1. Two numbers 
should appear in the upper left corner 
of the screen. The first number is the 
screen location of the cursor, and the 
number following the comma is the 
poke value of the character stored at 
that location. 

If you load Plotter from the 64's open- 
ing screen and go through the preced- 
ing steps, you should see that Plotter 
has been enabled and the word 
READY should be near the bottom of 
the screen. Place your cursor over the 
letter R in the word READY and press 
f1. At the top of the screen, you may 
see 1904,18. If your cursor isn't on 
line 24, you may get a different first num- 
ber, but you should get an 18, which is 
the value to poke to the screen to print 
an R. 

Now press the space bar to delete 
the letter R. Move the cursor to any 


G-31 


PROGRAMS 


EN HD ST aT LSE OS NCS SEL SES EE 


blank line on the screen, enter POKE 
1904,18, and press Return. (Use the 
numbers at the top of your screen if 
they are different.) The R should now 
be back in the word READY. Press f7 
to clear those values; then move the cur- 
sor to another location and press f1 
again. 


How Does It Do That? 

Plotter wedges itself into the 64’s hard- 
ware interrupt routine and then turns 
control of the 64 back to the BASIC edi- 
tor. The program waits in the back- 
ground, quietly scanning the keyboard 
for f1 to be pressed. When it detects 
f1, it copies the characters and colors 
from the first eight bytes of screen mem- 
ory. Plotter writes the screen location of 
the cursor and the value of the charac- 
ter under the cursor to the top left cor- 
ner of the screen. It then scans 7 for 
a keypress. When the program detects 
that the f7 key has been pressed, Plot- 
ter replaces the characters at the top 
of the screen that may have been over- 
written. 

You can disable Plotter by pressing 
Run/Stop and the Restore key simulta- 
neously. It would be good practice to 
disable Plotter before using the disk 
drive. You can activate it again with 
SYS49152. 


PLOTTER 


C66G:AG 6G BY BE Cl 26 D2 FF 48 
CG68:C8 CO 54 D@ F5 AD 14 G3 47 
C610:8D 11 63 AD 15 63 8D 12 B9 
CG18:63 78 AJ 2B 8D 14 63 AY 8D 
CG2G:CG 8D 15 G3 58 AI BO 8D 2F 
CG28:26 CB 60 AE 26 CB EG G8 95 
C630:D@ 16 A6 CB EG 64 FB G3 2D 
C@38:6C 11 G3 A2 61 8E 26 CB OD 
CG4G:A5 CE 8D 36 CB 6C 1l 63 92 
CO48:A5 CF C9 Gl FO 13 AE 26 2B 
CG@50:CB EG G1 FO 12 ED G2 FG 28 
C@58:14 E@ @4 FO G7 ED G3 FG SE 
CG66:99 6C 11 83 4c 34 Cl 4C D6 
CG68:D4 CO 4C 88 Cl AY G3 8D DE 
CG70:26 CB AS Dl 85 FB A5 D2 G1 
C@78:85 FC 18 A5 D3 65 FB 85 6B 
CG80:FB A9 66 65 FC 85 FC AS SE 
C@88:FC A6 FB 8D 34 CB 8E 33 AB 
CG9G:CB A2 69 8E 35 CB AG BO 75 
CG98:AD 33 CB DD A5 Cl AD 34 D8 
CGAG:CB FD A6 Cl 96 GF 8D 34 88 
C@A8:CB AD 33 CB FD AS Cl 8D 36 
COBG:33 CB C8 D@ E3 98 CA FG EC 
CGB8:10 C9 BB FG G3 8D 35 CB SE 
C6CG:2C 35 CB 3@ 04 AI GG FG DI 
CGC8:05 29 7F 20 7B Cl CA 10 91 
C@DG:C5 6C 11 G3 AD B2 8D 26 33 
C@D8:CB AG GG AI GB 85 FB AY BA 


G-32 COMPUTE 


COEG:04 85 FC A9 21 85 FD A9 C4 
CGE8:CB 85 FE Bl FB 91 FD C8 97 
CGOFG:CO 68 DB F7 AB BB AI BB CE 
COF8:85 FB A9 D8 85 FC AY 29 9B 
C160:85 FD A9 CB 85 FE Bl FB 3F 
C168:91 FD C8 C@ 68 DG F7 AD 16 
C116:03 8D @6 D8 8D G1 D8 8D BS 
C118:02 D8 8D G3 D8 8D G4 DB 92 
C120:8D 65 D8 8D 86 D8 8D 67 55 
C128:D8 A2 64 86 FE A2 O08 86 B2 
C13@:FD 6C 11 @3 A5 CB C9 G3 13 
C138:F@ 63 6C 11 63 AY 6G 8D DF 
C146:26 CB AG GG AY BG 85 FB 2F 
C148:A9 64 85 FC AQ9 21 85 FD FC 
C156:A9 CB 85 FE Bl FD 91 FB E@ 
C158:C8 CO @8 DG F7 AG BG AD 6A 
C166:06 85 FB A9 D8 85 FC A9 DF 
C168:29 85 FD A9 CB 85 FE Bl 66 
C176:FD 91 FB C8 C@ 88 DG F7 23 
C178:6C 11 63 8C 31 CB AB BB 99 
C180:91 FD E6 FD AC 31 CB 66 2B 
C188:A9 26 8D G6 G4 8D G7 G4 63 
C198:A9 2C 26 7B Cl AD 36 CB AC 
C198:85 FB A9 G66 85 FC AQ G4 BA 
C1AG@:8D 20 CB 4C 87 CO G1 86 72 
C1lA8:GA G6 64 GG E8 63 18 27 58 
C1BG:@D @D 9A 43 4F 58 59 52 46 
C1B8:49 47 48 54 28 31 39 39 72 
C1C@:31 6D 43 4F 4D 56 55 54 28 
C1c8:45 26 56 55 42 4C 49 43 6F 
C1DG:41 54 49 4F 4E 53 20 49 71 
C1D8:4E 54 4C 26 4C 54 44 @D 6D 
C1EG@:41 4C 4C 206 52 49 47 48 32 
C1E8:54 53 26 52 45 53 45 52 E8 
C1FG:56 45 44 GD GD 56 4C 4F DB 
C1F8:54 54 45 52 20 45 4E 41 7D 
C200:42 4C 45 44 GB BG GG BB AG 


Daniel Lightner lives in Sidney, Mon- 
tana. He is the author of Noah's Arc, 
which was published in July 1991. 0 


SHOWDOWN 


By Arihant Jain 

Some games are very simple to play, 
but difficult to master. Showdown is 
such a game. 

This board game for one or two play- 
ers resembles Chinese checkers. The 
board has 32 pegs arranged in ina 
cross-shaped grid, with one open po- 
sition in the center. The object is to 
clear the board of as many pegs as pos- 
sible. You remove a peg by jumping it 
with an adjacent peg, but you must 
land in an empty space. If that space 
has a peg in it, you can't jump. 


Typing It In 

Showdown is written entirely in BASIC. 
To avoid typing errors, enter the pro- 
gram with The Automatic Proofreader; 
see “Typing Aids” elsewhere in this sec- 


tion. Be sure to save a copy of the pro- 
gram when you've finished typing it in. 


Let’s Play 


When you run Showdown, you'll be 


- asked whether you want to play or 


watch a replay of an earlier game. 
Since there will be nothing to watch at 
first, press P for play. 

You'll then be asked whether you 
want to play singles or a combined ef- 
fort. If you elect to play alone, make 
sure your joystick is in port 2. When 
two people play, two joysticks are re- 
quired, and players take turns jumping 
pegs. 

Pegs are removed automatically 
when you jump them. Remember that 
you can jump a peg only if you are 
next to it and the space on the other 
side of the jumped peg is vacant. You 
can only jump up, down, left, or right. 
Diagonal moves are not allowed. 

Use the joystick to position your cur- 
sor on any peg you like. To jump, 
press the fire button and then move 
the stick in the direction you want to 
jump. If the move is legal, the comput- 
er will make the move and remove the 
jumped piece. You'll get a message if 
a move is illegal. 

When you have removed as many 
pegs as possible, press the @ key to re- 
ceive your score and a message 
about how well you played. If you are 
sharp and have planned your moves 
carefully, it's possible to remove all the 
pegs but one. 


Watch a Replay 

When you've finished a game, you'll be 
asked if you want to save it, Saving 
games will give you a chance to 
watch each move again and see 
where you went wrong. It'll also give 
you a chance to prove to others how 
brilliantly you played. 

If you decide to save a game, Show- 
down will ask for a filename and then 
your name. The game and each move 
will be saved to disk. 

To see a saved game, press R for re- 
play on the opening screen and supply 
the filename. The game board will ap- 
pear, and Showdown will automatical- 
ly play back every move you made dur- 
ing that game. You can slow down the 
replay moves by pressing L or make 
them move faster by pressing F. 


SHOWDOWN 


QF 100 DIMF (2668) ,G(2609) 


FR 
AK 
PC 


RA 


JA 


HB 


RX 


116 
126 


156 


166 


176 


189 
196 
268 
210 
220 
236 
240 
2568 
260 
276 
280 
290 
360 
316 
328 
330 
346 
358 
368 
376 
386 


396 
400 


GOSUB 886 
GOSUB1OGG 

S = 1475:0=1274:B=1391: 
C=1397:M=@:W=0:F=8:G=G: 
U=a 

PRINT" {CLR} {HOME} {BLK}" 
:POKE 53286,13:POKE5328 
1,12 

PRINT"{4 DOWN} 

{18 RIGHT} {RVS} 

{4 SPACES} {DOWN} {LEFT} 
{SPACE} {DOWN} {LEFT} 

{5 LEFT} {UP} {LEFT} 
{UP} {LEFT} " 

PRINT" {HOME}{7 DOWN} 

{7 RIGHT} {RVS} 

{3 SPACES} {OFF }WWW{RVS} 
{3 SPACES} {OFF} {UP} 

{6 LEFT }Www" 

PRINT" {DOWN} {7 RIGHT} 
{RVS} {DOWN} {LEFT} 
{DOWN} {LEFT} {DOWN} 
{LEFT} {3 SPACES} {OFF}W 
{RVS}W{OFF }W{RVS} 

{3 SPACES} {UP} {LEFT} 
{UP}{LEFT} {UP}{LEFT} 
{8 LEFT} {OFF}"; 

PRINT "WHWWWWW{ DOWN} 

{7 LEFT} WWW WWW" 
PRINT"{8 RIGHT}! us 
PRINT" {DOWN}{9 RIGHT} 
{RVS} {OFF }WWW{RVS} 
{OFF}" 

PRINT"{9 RIGHT} {RVS} 

{5 SPACES}" 

IFH=-1THEN 1196 

v=2 

IFV=3THEN V=1 
IFI=@THENV=2 

JO=USR(V) :GETAS 

IF (JOAND15) =1THENW=-48: 
GoTO48¢ 

IF (JOAND15) =4THENW=-1:G 
oT048¢ 

IF (JOAND15) =8THENW=1:GO 
T0480 

IF (JOAND15) =2THENW=48:G 
oT048¢ 

IF (JOAND16)=@THEN GOTO3 
46 


IF A$ ="@" THEN 616 
GOTO 246 
JO=USR(V) : IF (JOAND15) =6 
THEN GOTO34@ 

IF (JOAND15) =1THENW=-46: 
GOTO4G8 

IF (JOAND15) =4THENW=-1:G 
OTO468 

IF (JOAND15) =8THENW=1:GO 
T0486 

IF (JOAND15) =2THENW=46:G 
OTO466 

GOTO 246 

Y=S+W:R=@:IF PEEK(S)=21 
STHEN R=R+1 


416 
426 


436 


446 
456 


466 
478 
486 
496 
568 
5196 
526 
530 
546 
550 
566 
579 
586 
596 


606 
610 


626 


639 


646 


658 
666 
676 
689 
699 
766 


716 
726 


736 
746 


756 


768 
776 
788 
799 


IFPEEK (Y¥) =87THENR=R+1 
IF PEEK (S+W+W) =32THENR=R 
+1 

IFR=3 THEN 456 

GOTO 53G 

M=M+1: POKES , 32: POKES+W, 
32:GOSUB560:POKE S+W+W, 
215:S=S+W+W: V=V+1:U=U+1 
F(U)=1:G(U) =W 

GOTO 240 
J=0:Z=PEEK(S):Y=S+W :IF 
PEEK (Y) =87THENQ=87:J=J+ 
1 

IFPEEK (Y) =32THENQ=32:J= 
J+1 

IF J=1 THEN 526 

GOSUB 530 

POKES , 2-128: POKES+W,Qt+1 
28:S=S+W:U=U+1:F (U)=8:G 
(U)=W:GOTO 246 

PRINT" {HOME} {22 DOWN}IL 
LEGAL MOVE":GOSUB 568 
PRINT" {HOME}{22 DOWN} 
{12 SPACES}" 

GOTO{2 SPACES}249 

REM 
POKE54296,15:POKE54277, 
64: POKE54273,162: POKE54 
272,37 
POKE54276,17:FORT=1T026 
@:NEXT 
POKE54276,16:FORT=1T058 
:NEXT 

RETURN 
J=32-M:F (U+1) =-1:G(U+1) 
=6 

PRINT"{CLR}{2 DOWN}";J; 
"PEGS REMAINING{2 DOWN} 
" 


IFJ>1@THEN PRINT"POOR!" 
:W=-1:GOTO708 

IFJ>7THEN PRINT"SATISFA 
CTORY PLAY!":W=-1:GOTO7 
UT) 

IFJ>STHEN PRINT"GOOD!": 
W=4:GOTO766 

IFJ>3THEN PRINT"GREAT!" 
:W=5:GOTO70G 

IFJ>2THEN PRINT"WELL PL 
AYED!":W=11:GOTO760 
IFJ>1THEN PRINT"MISSED! 
"3W=6:GOTO786 

IFJ>@THEN PRINT"DID IT! 
":W=6:GOTO700 

PRINT"{3 DOWN}WANT TO S 
AVE? (Y¥/N)" 

GETK$:IF KS=""THEN716 
IF K$<>"N"ANDKS<>"Y"THE 
N 719 

IFKS="N" THEN 860 


INPUT "FILENAME" ;NS: INPU 
T"YOUR NAME";MS 
OPEN15,8,15:0PEN2,8,2," 
@O:"+NS+",S,W" 

PRINT #2,MS$:FORV=1TOU+1 
PRINT#2,F (V) 
PRINT#2,G(V) :NEXT V 
CLOSE2:CLOSE15 


PRINT"{3 DOWN}WANT TO P 
LAY? (¥/N)" 
IFW<@THENGOTO840 
QZ=4*40:FORK=Q2+55336TO 
QZ+55336+W: POKEK,V:V=V+ 
1: IFV>255THENV=0 
NEXT K 
GET M$:IF M$="" THEN 81 
t] 
IF M$="N"THENPRINT" 
{CLR}":END 
IF M$="Y" THENGOTO 120 
GOTO 840 
JJ=49152:JH=INT (JJ/256) 
2 JL=JJ-JH*256:POKE785,J 
L: POKE786,JH 
FORK=JJTOJJ+67:READ Y:P 
OKEK,Y:NEXT 
DATA 120,76,97,176,21,1 
69,127,141 
DATA 6,220,173,1)226,20 
1,255,248 
DATA 4,169,31,208,13,17 
3,0,226 
DATA 16,8,169,255,141,0 
7220,173 
DATA 1,226,41,31,73,15, 
268,4 
DATA 133,97,240, 23,133, 
98,169,136 
DATA 133,97,169,0,133,9 
9,133,108 
DATA 133,191,133,182,19 
8,97,6,98 
DATA 16,250,88,96 
RETURN 
PRINT"{CLR}{2 DOWN}PLA 
Y, WATCH A REPLAY (P/R 
) "CHR$ (142) 
GETFS$:1FFS=""THEN1G16 
IFFS="P" THEN 1050 ~ 
IFFS="R"THEN 1120 
GOTO 1616 
PRINT" {CLR}{2 DOWN}ONE 
OR TWO PLAYER GAME? ( 
1/2)" 
GET IS$::IFI$ 
6 
IFIS="1"THEN I=6:GOTOL 
166 
IFIS$="2" THENI=1:GOTO 
{SPACE}996 
GOTO 1666 
H=G6:PRINT"{2 DOWN}JOYS 
TICK IN PORT 2" 
PRINT"PRESS "CHRS$(34)" 
@"CHRS$(34)" TO END":FO 
R E=1 TO 966:NEXT:RETU 
RN 
U=8:N=6: INPUT" FILENAME 
"UNS 
OPEN15,8,15:0PEN2,8,2, 
"O:"4+NS+",S,R": INPUT#2 
M$ 
GOTO 1339 
INPUT#2,F(U) ,G(U) . 
IFF(U)=-1 THEN U=U-1:G 
0T01188 


“THEN1G6 


G-33 


PROGRAMS 


KF 1176 
FR 1186 


U=U+1:GOTO 115¢ 
H=-1:PRINT"{CLR}":GOTO 
150 

S=1475:TI%=208 

FOR V=GTOU 

E=S+G(V) :GETAS 

IF F(V)=G@THEN POKES, PE 
EK(S)-128:POKE E,PEEK( 
=S+G(V) 
THENPOKES , 32 
: POKEE, 32: POKEE+G (V) ,2 
15 :S=S+G(V)+G(V) :GOsU 
B560 
IFAS="E"THENTI$=TI%-50 
IFAS="L"THENTI$=TI%+50 
IF TI$>106OTHENTI%=106 
i‘) 

IF TI$<@THENTI$=0 
FORA=1TOTI$:NEXT:NEXTV 
:PRINT"BY:";MS 
PRINT" {2 DOWN} {RVS} PRE 
SS SPACE BAR TO CONTIN 
UE" 

GETAS:IFAS<>" "THEN 13 
6G 

CLOSE2:CLOSE15 
RESTORE:GOTO 116 
INPUT#15,EN,EM$,ET,ES 
IF EN>@THENPRINTEMS:GO 
TO 1360 

GOTO 1150 
CLOSE15:CLOSE2:GOTO 11 
26 


1196 
XH 1269 
GJ 1216 
KR 1226 


EG 1236 


JP 1246 
1250 
CJ 1260 


RA 1276 
HR 1286 


QH 1296 


HJ 1366 


JA 1316 
SR 1326 
XM 1336 
XQ 1346 


AH 1356 
XH 1360 


Arihant Jain lives in Ludhiana, a city in 
northwest India. a] 


MEDIUM-DENSITY 
DRIVER 


By Matthew Spinks 

Over the years, I've done a good deal 
of graphics work on my computer that 
has included plotting graphs and draw- 
ing pictures. I've always been frustrat- 
ed by the high-resolution graphics sys- 
tem used by the 64. It's generally more 
trouble than it's worth when all you 
want to do is plot a simple graph or pic- 
ture, 

At the other extreme of the graphics 
spectrum, the resolution of the normal 
text screen is usually too low to provide 
the detail required by straightforward 
graphs or pictures. What is needed is 
a graphics mode between the two ex- 
tremes, amode which offers a reasona- 
ble resolution but avoids the complexi- 
ty associated with bitmapped graphics. 

Such a graphics mode does exist. If 
you enter PRINT CHR$(190): PRINT 


G-34 COMPUTE 


CHR$(188): PRINT CHR$(187): PRINT 
CHR$(172), you'll see four characters 
on the screen. Each one fills one quad- 
rant of a whole text cell. These charac- 
ters enable the normal text screen to be 
turned into amedium-resolution graph- 
ics screen which has twice the resolu- 
tion of the ordinary text screen. This for- 
mat provides new screen dimensions of 
80 points horizontally by 50 points ver- 
tically, an overall resolution of 4000 
plot points. 

This medium-density graphics mode 
has an attractive, chunky feel to it and 
is excellent for plotting graphs and draw- 
ing simple pictures. It also allows text 
and graphics to coexist peacefully. Un- 
like bitmap mode, the medium-density 
graphics mode requires no extra mem- 
ory to store graphics data, and it re- 
quires only a small graphics driver. Per- 
haps best of all, the medium-density 
graphics mode is simple and easy to 
use. 


Entering the Program 
Medium-Density Driver is a short rou- 
tine written entirely in machine lan- 
guage. To enter it, use MLX, our ma- 
chine language entry program; see 
“Typing Aids” elsewhere in this sec- 
tion. When MLX prompts, respond 
with the following values. 


Starting address: 033C 
Ending address: 0303 


When you've finished typing, be sure 
to save a copy of the program before 
exiting MLX. 

The driver sits safely in the cassette 
buffer, leaving the overused area at 
49152 ($CO000) free for your own pro- 
grams. This lets you plot individual 
points to the normal text screen. 

After you've typed in a copy of the 
driver, you can then use it to create 
your own medium-density graphic 
screens. To use it, simply load the ma- 
chine language program with the ,8,1 
extension and type NEW. This NEW 
command is necessary because it re- 
sets some important BASIC pointers. 


The Plot Thickens 

To plot graphs or pictures, simply use 
the command SYS828, x, y, on/off, col- 
or. Here x and yare the screen coor- 
dinates for points to be plotted. The 


range is 0-79 on the x-axis and 0-49 
along the y-axis. On/off is a flag which 
determines whether or not a point is 
plotted or erased. If on/off = 1, a point 
will be plotted. If on/off = 0, a point 
will be erased. Color, of course, is the 
color of the point to be plotted and 
should be in the range 0-15, represent- 
ing the standard Commodore colors. 

For example, to plot a white point at 
the top left-hand corner of the screen, 
enter the following command: 


SYS828, 0, 0, 1,1 


Similarly, to erase a point at the oppo- 
site corner (the bottom right-hand cor- 
ner), the command SYS828, 79, 49, 0, 
1 would be used. Note that despite the 
fact that we are erasing a point, the col- 
or must still be specified. This is nec- 
essary because the program checks 
all parameters, and if any value falls out- 
side the ranges mentioned or if any 
parameter is missing, you'll get a SYN- 
TAX ERROR. 


Points to Ponder 

Because the medium-density graphics 
mode uses the normal text screen and 
color memories, setting the color of 
one point will also affect the color of 
the neighboring three points. Some 
care must be taken when plotting in 
more than one color to achieve the de- 
sired effect. Although this may seem 
like a drawback at first, it does have 
the advantage of allowing text and stan- 
dard Commodore graphics characters 
to be integrated onto the graphics 
screen. 

Text can be printed and character 
values can be poked to the screen in 
the normal way. Note, however, that 
with the graphics driver you can nei- 
ther erase text or nongraphics charac- 
ters nor plot over text or other char- 
acters. This prevents text and other 
graphics from being accidentally 
erased. 


A Demonstration 

Demo is a short demonstration pro- 
gram written entirely in BASIC. It will 
give you some idea of how you can 
use the driver. To help prevent typing 
errors, use The Automatic Proofreader 
to type it in; see “Typing Aids” else- 
where in this section. 


Demo plots Lissajous figures. 
These are a series of curves found by 
combining perpendicular harmonic mo- 
tions. They are commonly exhibited by 
feeding two harmonic frequencies into 
an oscilloscope's X and Y input cir- 
Cuits. (Don't worry. You don't have to un- 
derstand Lissajous figures to see how 
the program works, They're easier to 
demonstrate than to explain.) 

Before running the demonstration, 
make sure Driver is already in memo- 
ry. When running the demonstration, 
try experimenting with the values the 
program asks for. Entering 1,2 will pro- 
duce entirely different results than will 
241, 

The patterns produced will be in mon- 
ochrome, but you can easily add color 
by changing the value of the color var- 
iable, C, in line 270. For a rainbow of 
color, try Demo with these lines added. 


262 C=C+1 
264 IF C=16 THEN C=0 


Now that you have an idea of how Me- 
dium-Density Driver works, try creating 
some figures or patterns of your own. 


MEDIUM DENSITY DRIVER 


@33C:AG 63 8C D2 G3 26 GB E2 8D 
0344:8A AC D2 63 DI BE 63 BO C5 
@34C:6E 99 D3 G3 88 16 EB AO AG 
@354:62 8D D7 63 4E DS G3 96 4A 
935C:66 GE D7 63 GE D7 G3 4E 38 
@364:D6 63 96 G3 4E D7 G3 AE SF 
G36C:D5 63 26 FO E9 AD D6 G3 E7 
0374:18 65 Dl 85 Dl 96 62 E6 2E 
937C:D2 20 24 EA A® 66 Bl Dl 61 
@384:A2 OF DD C2 63 FG G4 CA 36 
@38C:16 F8 66 AD D4 63 FG 1A 6E 
@394:E0 GF FO 15 AD D3 G3 91 92 
@39C:F3 8A 2C D7 G3 DG BA 18 CI 
@3A4:6D D7 63 AA BD C2 63 91 F2 

: 8A 2C D7 93 FO F9 6E 
D7 63 4C A7 63 4C DB 
16 62 32 58 26 7C 64 
6C El 7F FB 7B FF 51 
62 FE FC A@ 66 @@ 65 


CX 166 


REM DRIVER DEMONSTRATIO 


N 
BF 116 REM COPYRIGHT 1991 - CO 
MPUTE PUBLICATIONS INTL 
LTD — ALL RIGHTS RESER 
VED 
REM MAKE SURE DRIVER IS 
IN MEMORY! 


JB 126 


DK 136 


KX 135 PI=3.14159 


JS 140 POKE 53280,11:POKE 5328 
shea 

GK 15@ PRINTCHRS(147)CHRS(5) 

RD 166 PRINTTAB(11) "LISSAJOUS 
{SPACE} FIGURES"CHRS (17) 

RX 170 PRINT"PRESS ANY KEY AFT 
ER VIEWING FIGURE" 

QE 18@ PRINTCHR$(17)"ENTER ANY 
TWO NUMBERS, EACH" 

BH 198 INPUT"WITH VALUES LESS 
{SPACE}THAN 5";X,Y 

DR 208 IF X>5 OR Y>5 THEN 180 

HP 210 PRINTCHRS$ (147) 

XM 226 FL=1:GOSUB 266 

MR 230 POKE 198,0:WAIT 198,1 

QP 240 FL=6:GOSUB 266 

SF 250 END 

RR 266 FOR T=l TO 2*PI*160+(10 
*PI* (X+Y)) 

JK 276 SYS 828, (1+SIN(X*T)) *49 
1 (1+COS (¥*T))*25,FL,C 

SD 286 NEXT 

SK 296 RETURN 


Matthew Spinks, who wrote Loader- 
Maker (May 1991), lives in Erica, Victo- 
ria, Australia. a 


RAPIDFORMAT 128 


By Mahmood Hasan Merchant 

A number of fast formatting programs 
have been around for the 64 ever since 
the 1541 disk drive was introduced by 
Commodore. These programs greatly im- 
prove the performance of the drive in 
terms of time saved. 

Commodore probably took a lesson 
from these programmers and added a 
much more efficient format routine into 
its 1571 disk drive. The drive formats a 
double-sided disk in 41 seconds, but 
wouldn't we all appreciate an even fast- 
er procedure? AapidFormat 128 
should do the trick. 

RapidFormat 128 is an easy-to-use, 
prompt-driven program for the 128 that 
cuts almost in half the time required to 
format all 70 tracks of a double-sided 
disk. It will format a single-sided disk in 
a mere 12 seconds. 


Getting Started 

RapidFormat 128 is written entirely in 
BASIC. To help prevent typing errors, 
use The Automatic Proofreader to 
type it in; see “Typing Aids” elsewhere 
in this section. When you've finished typ- 
ing, be sure to save a copy of the pro- 
gram. When you type RUN, the data 


will be read and written to disk as 
RapidFormat, a machine language pro- 
gram. 

Once RapidFormat has been gener- 
ated, it can be loaded and activated 
with the command RUN “RAPIDFOR- 
MAT". At this point you should remove 
the disk containing the program and in- 
sert the disk which is to be formatted. 
You are prompted to indicate whether 
you wish to format only the top side (for 
1541 use) or both sides of the disk. If 
you frequently need to access your 
files both in the 64 and 128 modes, 
then it may be a good idea to format on- 
ly the top side of the disk. This will pre- 
vent the annoying /Ilegal Track or Sec- 
tor error message which results when 
part of the file being accessed lies on 
a disk's second side. 


To V or Not to V? 

Next you have to specify whether you 
wish to verify the format. If verification 
is enabled, each sector on every track 
is read and checked for errors. If any 
are spotted, they are reported by the 
program. However, choosing this op- 
tion will slow down the formatting some- 
what. To format a disk at maximum 
speed, omit the verify option. 

This option is provided to meet the 
needs of various users. Write errors oc- 
cur rarely with the 1571, and if you 
have reasonable faith in the head align- 
ment of your drive (1571s are more 
trustworthy in this regard than older 
1541s), then you may save time by 
choosing not to verify. As long as the 
disk used is at least of average quali- 
ty, there shouldn't be any problems. 

If, however, the idea of not verifying 
makes you nervous, then you have the 
option. | would strongly advise you to 
verify if you are using generic or low- 
quality disks or if you wish to format 
both sides of a disk which is certified 
only for single-side use. In these cas- 
es, the caution and the extra time are 
probably worth it. 

Enter a name for the disk as you 
would in a conventional format routine. 
Be sure it is no longer than 16 charac- 
ters and is followed by a 2-character 
ID. This ID is written as a sort of signa- 
ture to every sector on the disk, and its 
main purpose is to indicate to the 
drive when a disk has been changed. 

Once you press Return, the disk will 


35 


PROGRAMS 


start to format. Make sure that the disk 
containing RapidFormat is not in the 
drive. To be safe, put write-protect 
tabs on disks that contain programs or 
valuable data. RapidFormat checks for 
write-protect tabs. If it finds one, the 
disk will not be formatted, and an error 
message will be displayed. Using write- 
protect tabs on all valuable disks is a 
good practice to follow. 


How It Works 

RapidFormat works by reprogramming 
the disk drive. It transfers a section of 
code to the buffer at address $0500. 
Once activated, the program copies 
the standard format routine from the 
drive ROM to the internal RAM and 
makes a few changes to it. 

If the verify option is not chosen, 
these routines are bypassed. Addition- 
al time is saved by using a fixed value 
to space out sectors on all tracks. The 
standard format routine writes and re- 
writes on each track to calculate the in- 
dividual length of gaps between sec- 
tors. 

This modification, coupled with fast- 
er changing of tracks, brings about the 
speed improvement of RapidFormat. 
Disks formatted with this program 
work just as well as those formatted us- 
ing the standard routine. 


RAPIDFORMAT 128 


SH 106 BANK1:SCNCLR:COLOR@,15:C 
OLOR4,15:COLORS,2 
PRINTCHRS (18) " 

{16 SPACES}786/110 

{17 SPACES}"; 

PRINT"{11 SPACES}RAPIDFO 
RMAT - 1571{11 SPACES}"; 
PRINT" COPYRIGHT 1991 - 
{SPACE}COMPUTE PUBS INTL 
LTD: "3 

PRINT"{11 SPACES}ALL RIG 

HTS RESERVED{16 SPACES}" 


EC 26 


PC 39 


MQ 40 


DE 59 


SA=7169:EA=8153 :DT=16 
PRINTCHRS$ (17) SPC (14) "REA 
DING ML!"CHR$(17)CHRS (17 


76 
86 


) 

FORI=GTODT-2:READ D$:D=D 
EC (D$) 

166 CHAR1,11,10:PRINT"LOADI 
NG AT:{2 SPACES}";HEX$ ( 
SA+1) 

POKESA+I ,D:CK=CK+D:NEXT 
READ D$:D=DEC (D$) :CK=C 
KAND255 

126 IFD<>CKTHENBEGIN 

136 :PRINTCHR$(17)"DATA ERR 


COMPUTE 


96 


116 


DB 
QK 


G-36 


XA 


XA 


MB 
QR 
Js 
FC 


BH 


HM 


HK 


QK 


XE 


XM 


XE 


KF 


BS 


FG 


Sx 


PQ 


xc 


XB 


PX 


PH 


149 
158 


168 


176 


189 


196 


200 
210 
226 
1066 


1619 


14626 


1636 


1046 


1656 


1966 


1676 


1686 


1696 


1166 


1116 


1126 


1136 


1146 


1156 


1169 


OR IN LINE"; 

: PRINT PEEK (65) +256*PEEK 
(66) :STOP 

BEND 

SA=SA+DT-1:CK=@: IFSA<=E 

AGOTO9G 

PRINTCHR$ (17) CHRS$ (17) "P 

RESS "CHRS$(18)" RETURN 

{SPACE}"; 

PRINTCHR$ (146)" TO SAVE 
‘RAPIDFORMAT '"; : INPUTD 


$ 
BSAVE"RAPIDFORMAT",B1,P 
(7169) TO P(EA+1):PRINT 
Ds$ 

END 


DATA 49,1C,GA,80,99,22 
193,22,A3,35,29,22,12, 
26,52,86 
DATA 20,41,20,50,20,49 
120,44,20,46,20,4F, 20, 
52,20,05 
DATA 4D,20,41,20,54,20 
,2D,20,31,35,37,31,20, 
92,22,31 
DATA 3A,20,4E,24,B2,22 
722,3A,56,24,B2,22,22, 
3A,49,EF 
DATA 44,24,B2,22,22,3A 
153,24,B2,22,22,00,74, 
1c,14,A9 
DATA GG,99,A3,35,29,22 
,12,20,20,20,28,31,39, 
39,30,29 
DATA 29,20,20,4D,41,48 
,4D,4F,4F,44,20,4D,45, 
52,43,B5 
DATA 48,41,4E,54,20,20 
120,92,22,00,9E,1C,1E, 
6G,99,BG 
DATA 22,11,11,46,4F,52 
74D, 41,54,20,54,59,50, 
45,3A,A9 
DATA 20,20,12,20,31,20 
,92,20,20,42,4F,54,48, 
26,53,35 
DATA 49,44,45,53,11,22 
,00,BE,1C,28,00,99,A3, 
31,34,FB 
DATA 29,22,12,20,32,20 
192,20,26,54,4F, 50,20, 
53,49,50 
DATA 44,45,26,4F,4E,4C 
159,22,00,D4,1C, 32,88, 
99,A3,6B 
DATA 31,35,29,22,11,31 
,9D,9D,9D,22,3B,3A,85, 
53,24,5D 
DATA GG,EC,1C,3C,60,8B 
,A8,53,24,B2,22,31,22, 
AF ,A8,6C 
DATA 53,24,B2,22,32,22 
,89,35,30,00,FF,1C,41, 
0G,8B,74 
DATA 53,24,B2,22,32,22 
»A7,53,24,B2,22,38,22, 


AJ 


XB 


EJ 


GS 


AB 


EX 


BB 


XR 


MX 


XX 


PK 


HD 


BB 


PM 


AX 


EH 


RK 


EK 


GA 


FE 


XD 


ME 


RB 


1176 


1186 


1196 


1266 


12196 


1226 


1236 


1246 


1258 


1266 


1276 


1286 


1296 


1366 


1316 


1326 


1336 


1346 


1356 


1366 


1376 


1386 


1396 


00,12,F5 
DATA 1D,43,00,53,24,B2 
,C7,28,C6,28,53,24,29, 
AB, 34,E5 
DATA 38,29,00,38,1D,46 
10G,99,22,11,11,56,45, 
52,49,0F 
DATA 46,59,3F,20,28,59 
,2F,4E,29,22,A3,31,35, 
29,22,9B 
DATA 4E,9D,9D,9D,22,3B 
,3A,85,4E,24,00,50,1D, 
50,006,706 
DATA 8B,A8,4E,24,B2,22 
159,22,AF,A8,4E,24,B2, 
22,4E,DF 
DATA 22,89,31,30,00,6A 
,1D,55,00,56,24,B2,22, 
36, 22,88 
DATA 3A,8B,4E,24,B2,22 
159,22,A7,56,24,B2,22, 
31,22,CE 
DATA @0,7D,1D,57,00,56 
»24,B2,C7,28,C6,28,56, 
24,29,9D 
DATA AB,34,38,29,00,94 
,1D,5A,00,99,22,11,11, 
4E,41,B7 
DATA 4D,45,22,A3,31,33 
129,3B,3A,85,4E,24,00, 
AD,1D,1A 
DATA 64,00,8B,C3,28,4E 
,24,29,B2,30,B0,C3,28, 
4E,24,64 
DATA 29,B1l,31,36,89,31 
,30,00,C2,1D,6E,00,99, 
22,11,44 
DATA 49,44,22,A3,31,33 
,29,3B,3A,85,49,44,24, 
GG,D4,5E 
DATA 1D,78,60,8B,C3,28 
149,44,24,29,B3,Bl,32, 
89,31,35 
DATA 30,00,DE,1D,82,00 
,9E,37,37,32,38,00,FB, 
1D,8C,BF 
DATA 60,99,A3,31,34,29 
,22,11,11,11,12,26,46, 
4F,52,38 
DATA 4D,41,54,54,49,4E 
147,20,92,22,00,26,1E, 
96,00,C2 
DATA 9F,31,35,2C,38,2C 
131,3573A,98,31,35,2C, 
22,55,D6 
DATA 34,22,53,24,56,24 
149,44,24,22,2C,22,4E, 
24,3A,14 
DATA AG,31,35,3A,99,44 
153724,00,00,00,A6,BA, 
AG, GF,A3 
DATA A9,G0,20,38,F7,85 
,B7,20,CG,EF,A6,B8, 20, 
C9,FF,59 
DATA 26,7D,FF,55,30,3E 
,52,01,00,20,CC,FE,A9, 
65,AG,EB 
DATA 00,85,FB,84,FA,A2 


XA 


BH 


DH 


EF 


EE 


RR 


ony 


BD 


CR 


HG 


RR 


SM 


MG 


BR 


AG 


PG 


GP 


HJ 


Jc 


RC 


HQ 


PX 


1496 


1416 


1426 


1436 


1446 


1458 


1466 


1476 


1486 


1496 


1568 


1516 


1526 


1536 


1540 


1556 


1560 


15768 


1586 


1596 


1690 


1616 


,OA,86,FE,A9,AF,85,FC, 
A9,1E,CE 
DATA 85,FD,A5,BA,29,3E 
,E3,A9,6F,20,D2,E4,A9, 
4D, 26,26 
DATA @3,E5,A9,2D,20,03 
1E5,A9,57,20,03,E5,A5, 
FA, 26,8D 
DATA @3,E5,A5,FB, 20,03 
,E5,A9,20,20,03,E5,AG, 
00,B1,B2 
DATA FC,26,03,E5,C8,CO 
120,90,F6,20,26,E5,18, 
A5,FC,16 
DATA 69,20,85,FC, 90,02 
,E6,FD,18,A5,FA, 69,20, 
85,FA,3E 
DATA 96,02,£6,FB,C6,FE 
,DO,AF,4C,E7,FF,4C, 46, 
@5,20,9F 
DATA C2,05,20,7C,87 ,A2 
,00,86,0B,A2,24,86,GA, 
AD, 62,22 
DATA G2,85,1F,F6,08,A9 
,BG,85,62,A5,02,30,FC, 
A2,01,F4 
DATA 86,GA,A9,EG,85,02 
7A5,02,3G0,FC,C9, 62,98, 
63,4C,1D 
DATA GA,E6,26,05,FG,A9 
124,A6,1F,F@,62,A9,47, 
AG, 87,20 
DATA 8C,7A,82,4C,73,A7 
,AD,GG,1C,29,10,D0,05, 
A9,68,F6 
DATA 4C,B5,99,A9,60,85 
120,A5,GA,85,51,85,67, 
20,4B,24 
DATA F2,85,43,20,50,06 
,A5,1F,FG,16,26,F8,93, 
18,A5,5C 
DATA 51,69,23,85,51,20 
,50,06,20,F5,93,A6,GA, 
E8,E6,49 
DATA 24,DG,12,86,14,20 
,E7,87,C6,14,D8,E9,A2, 
12,86,0B 
DATA GA,A9,61,4C,B5,99 
,86,GA,BD,08,94,85,44, 
AD,@G,AD 
DATA 1C,29,9F,65,44,8D 
,00,1C,20,DF,87,20,DF, 
87,A5,87 
DATA 1F,D@,03,4C, 46,45 
,C6,64,C6,64,26,F8,93, 
20,DF,87 
DATA 87,20,DF,87,20,F5 
193,4C,46,05,20,FE,5, 
A9,E9,G1 
DATA AG,G6,8D,77,87,8C 
,78,07,A9,81,8D,CD, 06, 
A9,GA,79 
DATA 8D,26,86,A9,08,8D 
126,06,A9,C5,AG,07,8D, 
B9,67,7E 
DATA 8C,BA,07,A9,6G,8D 
,EE,07,AD,@3,62,D8,05, 
A9,4C,54 


KX 1620 DATA 8D,9A,07,60,B1,14 
791,2C,C8,60,AD,04,02, 
AC,@5,9C 
DATA 62,85,12,84,13,A9 
193,AG,9B,85,14,84,15, 
A9, 06,88 
DATA AG@,50,85,2D,84,2C 
,AG,00,20,F8,65,D0,EB, 
E6,15,D5 
DATA E6,2D,20,F8,05,CO 
,9E,DG,F9,68,08,00,98, 
06, 00,B7 


AM 1636 


DC 1646 


FF 1656 


Mahmood Hasan Merchant is an ec- 
onomics student at the London School 
of Economics and Political Science. He 
is from Pakistan. a 


TYPING AIDS 

MLX, the machine language entry program 
for the 64 and 128, and The Automatic 
Proofreader are utilities that help you type 
in Gazette programs without making mis- 
takes, These labor-saving utilities are oneach 
Gazette Disk and printed in issues of Gazette 
through June 1990. 

If you don't have access to a back issue or to 
one of ourdisks, write and we'll send you free 
copies of both of these handy utilities. We'll 
also include instructions on how to type in 
Gazette programs. Please enclose a self-ad- 
dress, stamped envelope. Write to Typing 
Aids, COMPUTE's Gazette, 324 West Wen- 
dover Avenue, Greensboro, North 
Carolina 27408. 


Gazette is looking for utilities, 
games, applications, educa- 
tional programs, and tutorial ar- 
ticles. If you've created a 
program that you think other 
readers might enjoy or find 
useful, send it on disk to 


Gazette Submissions Reviewer 
COMPUTE Publications 

324 W. Wendover Ave. 

Ste. 200 

Greensboro, NC 27408 


Please enclose an SASE if you 
wish to have the materials 
returned. 


ONLY 
ON DISK 


Inaddition to the type-in programs 
found in each issue of the maga- 
zine, Gazette Disk offers bonus 
programs andoriginal 64 and 128 
artwork. Here are the programs 
featured this month. 


Super Cataloguer 128 


Diego Martin Zamboni 
Mexico City, Mexico 


Catalogue all of your software (up to 
2500 titles) quickly and easily with 
this outstanding utility for the 128. An 
80-column monitor is required. 


Read a disk directory, select which 
files you wish to add to the list, and 
then save them, sort them, search 
through them, and delete names at 
the touch of a key. If you can't recall 
the contents of afile, the program will 
listitto the screen. It even works with 
sequential, user, and relative files. 


Super Cataloguer 128 is also a 
great disk manager. You can edit 
filenames and delete files, whole 
disks, or even portions of disks. The 
program provides memory informa- 
tion, prints lists in several modes, 
and much more. This is one utility all 
128 users should have. 


Spanish Vocabulary Quiz 


Christopher M. Stoy 
Edensburg, PA 


To help you use Spanish Vocabulary 
Quiz, one of this issue's type-in pro- 
grams, see page G-25, we have 
included ten vocabulary files, con- 
taining dozens of English words and 
their Spanish equivalents. Load and 
use any of these files from the 
program's main menu. 


37 


MLX 


Machine Language Entry Program for Commodore 64 


Ottis R. Cowper 


Type in and save some copies of 
MLX—you'll want to use it to enter fu- 
ture ML programs from Gazette. When 
you're ready to enter an ML program, 
load and run MLX. It asks you for a start- 
ing address and an ending address. 
These addresses appear in the article 
accompanying the MLX-format pro- 
gram listing you're typing. 

If you're unfamiliar with machine lan- 
guage, the addresses (and all other val- 
ues you enter in MLX) may appear 
strange. Instead of the usual decimal 
numbers you're accustomed to, these 
numbers are in hexadecimal—a base 
16 numbering system commonly used 
by ML programmers. Hexadecimal— 
hex for short—includes the numerals 0- 
9 and the letters A-F. But even if you 
know nothing about ML or hex, you 
should have no trouble using MLX. 

After you've entered the starting and 
ending addresses, you'll be offered the 
option of clearing the workspace. 
Choose this option if you're starting to 
enter a new listing. If you're continuing 
a listing that's partially typed from a pre- 
vious session, don't choose this option. 
A functions menu will appear. The first 
option in the menu is Enter Data. If 
you're just starting to type in a pro- 
gram, pick this. Press the E key and 
type the first number in the first line of 
the program listing. If you've already 
typed in part of a program, type the 
line number where you stopped typing 
at the end of the previous session (be 
sure to load the partially completed pro- 
gram before you resume entry). In any 
case, make sure the address you en- 
ter corresponds to the address of a 
line in the listing you are entering. Oth- 
erwise, you'll be unable to enter the da- 
ta correctly. If you pressed E by mis- 
take, you can return to the command 
menu by pressing Return alone when 
asked for the address. (You can get 
back to the menu from most options in 
the program by pressing Return with 
no other input.) 


Entering a Listing 

Once you're in Enter mode, MLX 
prints the address for each program 
line for you. You then type in all nine 
numbers on that line, beginning with 
the first two-digit number after the co- 
lon (:). Each line represents eight data 
bytes and a checksum. Although an 


G-38 COMPUTE 


MLX-format listing appears similar to 
the “hex dump" listings from a ma- 
chine language monitor program, the 
extra checksum number on the end al- 
lows MLX to check your typing. 

When you enter a line, MLX recalcu- 
lates the checksum from the eight 
bytes and the address and compares 
this value to the number from the ninth 
column. If the values match, you'll 
hear a bell tone, the data will be add- 
ed to the workspace area, and the 
prompt for the next line of data will ap- 
pear. But if MLX detects a typing error, 
you'll hear a low buzz and see an er- 
ror message. The line will then be re- 
displayed for editing. 


Invalid Characters Banned 

Only a few keys are active while you're 
entering data, so you may have to un- 
earn some habits. You do not type 
spaces between the columns; MLX au- 
tomatically inserts these for you. You 
do not press Return after typing the 
ast number in a line; MLX automatical- 
ly enters and checks the line after you 
type the last digit. 


64 MLX Keypad 


Only the numerals 0-9 and the let- 
ters A-F can be entered. If you press 
any other key (with some exceptions 
noted below), you'll hear a warning 
buzz. To simplify typing, a numeric key- 
pad function is included. The keypad 
is active only while entering data. Ad- 
dresses must be entered with the nor- 
mal letter and number keys. The figure 
below shows the keypad configuration. 
MLX checks for transposed charac- 


ters. If you're supposed to type in AO 
and instead enter OA, MLX will catch 
your mistake. There is one error that 
can slip past MLX: Because of the 
checksum formula used, MLX won't no- 
tice if you accidentally type FF in 
place of 00, and vice versa. And 
there's a very slim chance that you 
could garble a line and still end up 
with a combination of characters that 
adds up to the proper checksum. How- 
ever, these mistakes should not occur 
if you take care while entering data. 


Editing Features 

To correct typing mistakes before fin- 
ishing a line, use the Inst/Del key to de- 
lete the character to the left of the cur- 
sor. If you mess up a line badly, press 
Cir/Home to start the line over. The Re- 
turn key is also active, but only before 
any data is typed on a line. Pressing Re- 
turn at this point returns you to the com- 
mand menu. After you type a charac- 
ter, MLX disables Return until the cur- 
sor returns to the start of a line. Remem- 
ber, press Clr/Home to quickly get to a 
line-number prompt. To make correc- 
tions in a line that MLX has redisplayed 
for editing, compare the line on the 
screen with the one printed in the list- 
ing and then move the cursor to the mis- 
take and type the correct key. The cur- 
sor-left and -right keys provide the nor- 
mal cursor controls. (The Inst/Del key 
now works as an alternative cursor-left 
key.) You cannot move left beyond the 
first character in the line. If you try to 
move beyond the rightmost character, 
you'll reenter the line. During editing, Re- 
turn is active; pressing it tells MLX to re- 
check the line. You can press the Clr/ 
Home key to clear the entire line if you 
want to start from scratch or if you 
want to get to a line-number prompt to 
use Return to get back to the menu. 


Display Data 

The second menu choice, Display Da- 
ta, examines memory and shows the 
contents in the same format as the pro- 
gram listing (including the checksum). 
When you press D, MLX asks you for a 
starting address. Be sure that the start- 
ing address you give corresponds to a 
line number in the listing. Otherwise, 
the checksum display will be meaning- 
less. MLX displays program lines until 
it reaches the end of the program, at 


which point the menu is redisplayed. 
You can pause the display by pressing 
the space bar. (MLX finishes printing 
the current line before halting.) Press 
the space bar again to restart the dis- 
play. To break out of the display and 
get back to the menu before the end- 
ing address is reached, press Return. 


Other Menu Options 

Two more menu selections let you 
save programs and load them back in- 
to the computer. These are Save File 
and Load File. When you press S or L, 
MLX asks you for the filename. You'll 
then be asked to press either D or T to 
select disk or tape. 

You'll notice the disk drive starting 
and stopping several times during a 
load or save. This is normal behavior. 
MLX opens and reads from or writes to 
the file instead of using the usual 
LOAD and SAVE commands. Also 
note that the drive prefix 0: is added to 
the filename (line 750), so this should 
not be included when entering the 
name. This also precludes the use of 
@ for save-with-replace, so be sure to 
give each version saved a different 
name. 

Remember that MLX saves the en- 
tire workspace area from the starting ad- 
dress to the ending address, so the 
save or load may take longer than you 
might expect if you've entered only a 
small amount of data from a long list- 
ing. When you're saving a partially com- 
pleted listing, make sure to note the ad- 
dress where you stopped typing. 

MLX reports the standard disk or 
tape error messages if any problems 
are detected during the save or load. 
It also has three special load error mes- 
sages: INCORRECT STARTING AD- 
DRESS, which means the file you're try- 
ing to load does not have the starting 
address you specified when you ran 
MLX; LOAD ENDED AT address, 
which means the file you're trying to 
load ends before the ending address 
you specified when you started MLX; 
and TRUNCATED AT ENDING AD- 
DRESS, which means the file you're try- 
ing to load extends beyond the ending 
address you specified when you start- 
ed MLX. If you see one of these mes- 
sages and feel certain that you've load- 
ed the right file, exit and rerun MLX, be- 
ing careful to enter the correct starting 


and ending addresses. 

The Quit menu option has the obvi- 
ous effect—it stops MLX and enters BA- 
SIC. The Run/Stop key is disabled, so 
the Q option lets you exit the program 
without turning off the computer. (Of 
course, Run/Stop-Restore also gets 
you out.) You'll be asked for verifica- 
tion; press Y to exit to BASIC, or press 
any other key to return to the menu. Af- 
ter quitting, you can type RUN again 
and reenter MLX without losing your da- 
ta, as long as you don’t use the Clear 
Workspace option. 


The Finished Product 

When you've finished typing all the da- 
ta for an ML program and saved your 
work, you're ready for the results. Re- 
fer to the corresponding article for 
details on loading and running the 
program. 


An Ounce of Prevention 

Don't take chances—use The Automat- 
ic Proofreader to type the new MLX, 
and then test your copy thoroughly be- 
fore first using it to enter any significant 
amount of data. Make sure all the 
menu options work as they should. En- 
ter fragments of the program starting at 
several different addresses; then use 
the display option to verify that the da- 
ta has been entered correctly. Test the 
save and load options to ensure that 
you can recall your work from disk. 


64 MLX 
SS 19 REM VERSION 1.1: LINES 8 
30,956 MODIFIED, LINES 4 
85-487 ADDED 
106 POKE 56,50:CLR:DIM INS, 
I,J,A,B,A$,B$,A(7) ,NS 
C4=48:C6=16:C7=7:22=2:2 
4=254:25=255:26=256:27= 
127 
FA=PEEK (45) +Z6*PEEK (46) 
?BS=PEEK (55) +26* PEEK (56 
) :H$="6123456789ABCDEF" 
RS=CHRS (13) :L$="{LEFT}" 
:S$="_":DS=CHR$ (26) :Z$= 
CHRS (6) :TS$="{13 RIGHT}" 
SD=54272:FOR I=SD TO SD 
+23:POKE I,@:NEXT:POKE 
{SPACE}SD+24,15:POKE 78 
8,52 
PRINT" {CLR}"CHRS$ (142)CH 
R$(8):POKE 53280,15:POK 
E 53281,15 
PRINT TS" {RED} {RVS} 
{2 SPACES}{8 @} 


EK 


DM 116 


CJ 126 
SB 136 


cQ 146 


FC 156 


EJ 166 


FR 


JB 


GF 


KR 


PG 


DR 


BD 


Js 


JH 
HK 


FD 


EJ 


PP 


RR 


BE 


176 


186 


196 


266 


216 


226 


236 


246 


256 
260 


276 


289 


296 


388 


316 


320 


336 


346 
358 


366 


379 


{2 SPACES}"SPC(28)" 
{2 SPACES}{OFF}{BLU} ML 
X II {RED}{RVS} 
{2 SPACES}"spc(28)" 
{12 SPACES}{BLU}" 
PRINT"{3 DOWN} 
{3 SPACES}COMPUTE!'S MA 
CHINE LANGUAGE EDITOR 
{3 DOWN}" 
PRINT" {BLK}STARTING ADD 
RESS{4}"; :GOSUB30G:SA=A 
D:GOSUB1646:IF F THEN18 
8 
PRINT" {BLK}{2 SPACES}EN 
DING ADDRESS{4}"; :GOSUB 
360:EA=AD:GOSUB1030: IF 
{SPACE}F THEN19@ 
INPUT"{3 DOWN} {BLK}CLEA 
R WORKSPACE [Y/N] {4}";A 
$:IF LEFTS(AS$,1)<>"Y"TH 
EN226 
PRINT" {2 DOWN} {BLU}WORK 
ING...";:FORI=BS TO BS+ 
EA-SA+7:POKE I,@:NEXT:P 
RINT"DONE" 
PRINTTAB(16)"{2 DOWN} 
{BLK}{RVS} MLX COMMAND 
{SPACE}MENU {DOWN}{4}": 
PRINT TS"{RVS}E{OFF}NTE 
R DATA" 
PRINT TS"{RVS}D{OFF}ISP 
LAY DATA":PRINT TS" 
{RVS}L{OFF}OAD FILE" 
PRINT TS"{RVS}S{OFF}AVE 
FILE":PRINT TS"{RVS}Q 
{OFF}UIT{2 DOWN}{BLK}" 
GET AS$:IF AS=NS$ THEN259 
A=6:FOR I=l1 TO 5:IF AS= 
MIDS ("EDLSQ",I,1)THEN A 
=I:1=5 
NEXT:ON A GOTO42G,610,6 
96,700,286:GOSUB1069:GO 
T0256 
PRINT"{RVS} QUIT ":INPU 
T"{DOWN}{4}ARE YOU SURE 
[Y/N] ";AS:IF LEFTS(AS, 
1) <>"Y¥"THEN226 
POKE SD+24,6:END 
INS=N$:AD=@: INPUTINS: IF 
LEN (INS) <>4THENRETURN 
BS=IN$:GOSUB320:AD=A:B$ 
=MID$ (INS,3) :GOSUB320:A 
D=AD*256+A: RETURN 
A=6:FOR J=1 TO 2:AS=MID 
$(BS$,J,1) :B=ASC (A$) -C4+ 
(AS>"@") *C7:A=A*C6+B q 
IF B<@ OR B>15 THEN AD= 
O:A=-1:J3=2 
NEXT: RETURN 
B=INT(A/C6) :PRINT MIDS ( 
H$,B+1,1) ;:B=A-B*C6: PRI 
NT MIDS (H$,Bt+1,1);:RETU 
RN 
A=INT (AD/Z6) :GOSUB350:A 
=AD-A*Z6:GOSUB35@: PRINT 
nen, 
2"5 
CK=INT (AD/Z6) :CK=AD-24* 
6-39 


Gc 
HA 
HD 
FK 


Gs 


FX 


CM 


MP 


KC 


MX 


GK 


HG 


Qs 


PM 


Qc 


PK 


HI 


QQ 


G-40 


388 
398 
408 


410 
426 


436 
448 


456 


465 


476 


489 


485 


486 


487 


496 


588 


518 


526 


539 


546 


556 


566 


576 


586 


599 


CK+Z5* (CK>Z7) : GOTO398 
CK=CK*Z2+25* (CK>Z7) +A 
CK=CK+Z5* (CK>Z5) : RETURN 
PRINT" {DOWN}STARTING AT 
{£4}"; :GOSUB3G0:IF INS<> 
NS THEN GOSUB1@3G:IF F 
{SPACE} THEN468 
RETURN 
PRINT"{RVS} ENTER DATA 
{SPACE}":GOSUB40@:IF IN 
S=N$ THEN226 
OPEN3,3:PRINT 
POKE198,8:GOSUB36@:IF F 
THEN PRINT INS:PRINT" 
{uP}{5 RIGHT}"; 
FOR I=@ TO 24 STEP 3:BS 
=S$:FOR J=1 TO 2:IF FT 
HEN BS$=MID$(INS,I+J,1) 
PRINT" {RVS}"BSL$;:IF I< 
24THEN PRINT" {OFF}"; 
GET AS:IF AS=N$ THEN476 
IF (AS>"/"ANDAS<":")OR(A 
$>"@"ANDAS<"G") THEN540 


Ren (ase"M") =28 (Ase, ") = 
3* (AS )-4* (AS="/")-5 
* (AS="J") -6* (AS="K") 

A=A-7* (AS="L") -8* (AS="= 


") -9* (AS="U") -10* (AS="I 
")-11* (AS="0") -12* (AS=" 
Pp") 
A=A-13* (AS=S$) :IF A THE 
N AS=MID$ ("ABCD123E456F 
6",A,1):GOTO 548 
IF AS=RS$ AND((I=6)AND(J 
=1)OR F)THEN PRINT BS$;: 
J=2:NEXT: 1=24:GOTO556 
IF AS="{HOME}" THEN PRI 
NT BS$:J=2:NEXT:1=24:NEX 
T:F=6:GOT044G 
IF (AS="{RIGHT}")ANDF TH 
ENPRINT BSL$;:GOTO546 
IF A$<>L$ AND AS<>D$ OR 
((1=6) AND (J=1))THEN GOS 
UB1668:GOTO479 
AS=LS+S$+L$:PRINT BSL$; 
:J=2-J:1IF J THEN PRINT 
{SPACE}L$;:I=I-3 
PRINT A$;:NEXT J:PRINT 
{SPACE}S$; 
NEXT I: PRINT: PRINT" {UP} 
{5 RIGHT}"; :INPUT#3,INS 
:IF INS=N$ THEN CLOSE3: 
GOTO228 
FOR I=1 TO 25 STEP3:BS= 
MIDS (INS, I) :GOSUB32@:IF 
I<25 THEN GOSUB38G:A (I 
73)=A 
NEXT:IF A<>CK THEN GOSU 
B166G: PRINT" {BLK} {RvS} 
{SPACE}ERROR: REENTER L 
INE {4}":F=1:GOT044G 
GOSUB108G:B=BS+AD-SA:FO 
R I=@ TO 7:POKE B+I,A(I 
) NEXT 
AD=AD+8:IF AD>EA THEN C 
LOSE3: PRINT" {DOWN} {BLU} 
** END OF ENTRY ** {BLK} 
{2 DOWN}":GOTO7G6 


COMPUTE 


GQ 
QA 


RJ 


KS 


PE 


FC 


Gs 


MA 


GE 


RX 


FA 
FQ 


SA 


609 
616 


629 


636 


645 


655 


666 
676 
686 
696 
768 


716 


726 


736 


7468 


758 


766 


776 


786 


796 


866 


81g 


820 


839 


846 
850 


866 


F=6:GOTO44G 
PRINT" {CLR} {DOWN} {RVS} 
{SPACE}DISPLAY DATA ":G 
OSUB40@:IF INS=NS$ THEN2 
20 
PRINT" {DOWN} {BLU} PRESS: 
{RVS}SPACE{OFF} TO PAU 
SE, {RVS}RETURN{OFF} TO 
BREAK{4}{DOWN}" 
GOSUB36@:B=BS+AD-SA:FOR 
I=BTO B+7:A=PEEK (I) :GOS 
UB350:GOSUB380:PRINT S$ 


7 

NEXT: PRINT" {RVS}"; :A=CK 
:GOSUB356: PRINT 
F=1:AD=AD+8:IF AD>EA TH 
ENPRINT" {DOWN} {BLU}** E 
ND OF DATA **":GOTO229 
GET AS:IF A$=R$ THEN GO 
SUB1980:GOTO226 

IF AS$=S$ THEN F=F+1:GOS 
UB168¢ 

ONFGOT0630, 666,630 
PRINT"{DOWN}{RVS} LOAD 
{SPACE}]DATA ":OP=1:GOTO 
716 

PRINT"{DOWN} {RVS} SAVE 
{SPACE}FILE ":0P=0 
INS=NS: INPUT" {DOWN} FILE 
NAME{4}";INS:IF INS=NS 
{SPACE} THEN22G 

F=@: PRINT" {DOWN} {BLK} 
{RVS}T{OFF}APE OR {RVS} 
D{OFF}ISK: {4}"; 

GET AS$:IF AS="T"THEN PR 
INT" T {DOWN}":GOTO88G 

IF AS<>"D"THEN736 
PRINT"D{DOWN}":OPEN15,8 
,15,"10:":B=EA-SA: INS=" 
G:"+INS:IF OP THENS19 
OPEN 1,8,8,INS$+",P,W":G 
OSUB869:IF A THEN22¢ 
AH=INT(SA/256) :AL=SA-(A 
H*256) : PRINT#1,CHRS$ (AL) 
7CHRS (AH) ; 

FOR I=8 TO B:PRINT#1,CH 
R$ (PEEK(BS+I));:IF ST T 
HENSGG 

NEXT :CLOSE1:CLOSE15:GOT 
0946 
GOSUB1960: PRINT" {DOWN} 
{BLK}ERROR DURING SAVE: 
{4}":GOSUB86G:GOTO229 
OPEN 1,8,8,INS+",P,R":G 
OSUB860:IF A THEN22¢ 
GET#1,A$,B$:AD=ASC (AS+Z 
$) +256*ASC(BS+Z$):IF AD 
<>SA THEN F=1:GOT0856 
FOR I=0 TO B:GET#1,A$:P 
OKE BS+I,ASC(A$+Z$) :IF( 
I<>B)AND ST THEN F=2:AD 
=I:I=B 

NEXT:IF ST<>64 THEN F=3 
CLOSE1:CLOSE15:0N ABS (F 
>G)+1 GOTO969,976 
INPUT#15,A,AS:IF A THEN 
CLOSE1:CLOSE15:GOSUB16 
60:PRINT"{RVS}ERROR: "A 


GQ 
EJ 


HJ 


cs 


sc 


KM 


JF 


AE 


XP 


FR 


DP 


PP 


GR 


FD 


RX 


FF 


FX 


CR 


HC 


AR 


DX 


PE 


AC 


876 
880 


890 


980 


916 


926 


936 


948 


950 


968 


978 


989 


996 


1656 


1618 


1626 


1636 


1646 


1956 


1968 


1676 


1686 


1996 


$ 

RETURN 
POKE183, PEEK (FA+2) : POKE 
187, PEEK (FA+3) :POKE188, 
PEEK (FA+4) : IFOP=GTHEN92 
G 

SYS 63466:1F (PEEK(783)A 
ND1)THEN GOSUB1660: PRIN 
T"{DOWN}{RVS} FILE NOT 
{SPACE}FOUND ":GOTO699 
AD=PEEK (829) +256*PEEK (8 
3G):IF AD<>SA THEN F=1: 
GOTO97G 

A=PEEK (831) +256*PEEK (83 
2)-1:F=F-2* (A<EA) -3* (A> 


A=SA:B=EA+1:GOSUB1010:P 
OKE78@,3:SYS 63338 
A=BS:B=BS+(EA-SA) +1:GOS 
UB1G1@:ON OP GOTO95G:SY 
S 63591 
GOSUB168G: PRINT" {BLU }** 
SAVE COMPLETED **":GOT 
0226 
POKE147,@:SYS 63562:IF 
{SPACE}ST>@ THEN97@ 
GOSUB198@: PRINT" {BLU}** 
LOAD COMPLETED **":GOT 
0226 
GOSUB166G: PRINT" {BLK} 
{RVS}ERROR DURING LOAD: 
{DOWN} {4}":ON F GOSUB98 
G,99G6,1966:GOTO22G 
PRINT"INCORRECT STARTIN 
G ADDRESS (";:GOSUB36@: 
PRINT") ": RETURN 
PRINT"LOAD ENDED AT ";: 
AD=SA+AD:GOSUB36G: PRINT 
D$:RETURN 
PRINT"TRUNCATED AT END 
ING ADDRESS":RETURN 
AH=INT (A/256) :AL=A-(AH 
*256) : POKE193,AL: POKEL 
94,AH 
AH=INT (B/256) :AL=B- (AH 
*256) : POKE174,AL: POKE1 
75,AH: RETURN 
IF AD<SA OR AD>EA THEN 
1658 
IF (AD>511 AND AD<6528 
6) THEN GOSUB1@8@: F=6 
: RETURN 
GOSUB196G: PRINT" {RVS} 
{SPACE} INVALID ADDRESS 
{DOWN} {BLK}":F=1:RETU 
RN 
POKE SD+5,31:POKE SD+6 
,208:POKE SD,24G:POKE 
{SPACE}SD+1,4:POKE SD+ 
4,33 
FOR S=1 TO 10@:NEXT:GO 
TO1698 
POKE SD+5,8:POKE SD+6, 
24@:POKE SD,@:POKE SD+ 
1,98:POKE SD+4,17 
FOR S=l TO 160:NEXT:PO 
KE SD+4,@:POKE SD,@:PO 
KE SD+1,@:RETURN og